The monad-par package

[Tags: bsd3, library]

This library offers an alternative parallel programming API to that provided by the parallel package. A Par monad allows the simple description of parallel computations, and can be used to add parallelism to pure Haskell code. The basic API is straightforward: the monad supports forking and simple communication in terms of IVars. The library comes with a work-stealing implementation, but the internals are also exposed so that you can build your own scheduler if necessary. Examples of use can be found in the examples/ directory of the source package. The modules below provide additionaly schedulers, data structures, and other added capabilities layered on top of the Par monad.


Versions0.1,,,, 0.3, 0.3.4,,,,,,,
Dependenciesabstract-deque (>=0.1.4), abstract-par, array (>=0.3), base (==4.*), containers, deepseq (>=1.1), monad-par-extras (==0.3.*), mtl (>=, mwc-random (>=0.11), parallel (>=3.1)
Copyright(c) Simon Marlow 2011
AuthorSimon Marlow
MaintainerSimon Marlow <>
CategoryControl, Parallelism, Monads
Home page
UploadedFri May 4 17:27:07 UTC 2012 by RyanNewton
DistributionsDebian:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:
Downloads19747 total (494 in last 30 days)
StatusDocs uploaded by user
Build status unknown [no reports yet]




Maintainers' corner

For package maintainers and hackage trustees