monad-par-0.3.4.8: A library for parallel programming based on a monad

# monad-par-0.3.4.8: A library for parallel programming based on a monad

The `Par` monad offers a simple API for parallel programming. The library works for parallelising both pure and `IO` computations, although only the pure version is deterministic. The default implementation provides a work-stealing scheduler and supports forking tasks that are much lighter weight than IO-threads.

For complete documentation see Control.Monad.Par.

Some examples of use can be found in the `examples/` directory of the source package.

Other related packages:

- `abstract-par` provides the type classes that abstract over different implementations of the `Par` monad.
- `monad-par-extras` provides extra combinators and monad transformers layered on top of the `Par` monad.

Changes in 0.3.4 relative to 0.3:

- Fix bugs that cause "thread blocked indefinitely on MVar" crashes.
- Added Control.Monad.Par.IO

Modules

- Control
  - Monad
    - Control.Monad.Par
      - Control.Monad.Par.IO
      - Scheds
        - Control.Monad.Par.Scheds.Direct
        - Control.Monad.Par.Scheds.Sparks
        - Control.Monad.Par.Scheds.Trace
        - Control.Monad.Par.Scheds.TraceInternal