Package Info


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".

License: BSD-3-Clause



Package Version Update ID Released Package Hub Version Platforms Subpackages
0.3.5-bp154.1.12 info GA Release 2022-05-09 15 SP4
  • AArch64
  • ppc64le
  • x86-64
  • ghc-monad-par
  • ghc-monad-par-devel info GA Release 2018-08-01 15
  • AArch64
  • ghc-monad-par
  • ghc-monad-par-devel info GA Release 2018-07-31 15
  • ppc64le
  • ghc-monad-par
  • ghc-monad-par-devel info GA Release 2018-07-30 15
  • x86-64
  • ghc-monad-par
  • ghc-monad-par-devel