The monad-par package

[Tags: bsd3, library]

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:

Changes in 0.3.4 relative to 0.3:


Versions0.1,,,, 0.3, 0.3.4,,,,,,,
Dependenciesabstract-deque (>=0.1.4), abstract-par, array (>=0.3), base (==4.*), chaselev-deque, containers, deepseq (>=1.1), monad-par-extras (>=0.3), mtl (>=, mwc-random (>=0.11), par-classes, parallel (>=3.1)
Copyright(c) Simon Marlow 2011
AuthorSimon Marlow, Ryan Newton
MaintainerSimon Marlow <>, Ryan Newton <>
CategoryControl, Parallelism, Monads
Home page
Source repositoryhead: git clone
UploadedWed Dec 3 14:49:18 UTC 2014 by RyanNewton
DistributionsDebian:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:
Downloads19379 total (448 in last 30 days)
StatusDocs uploaded by user
Build status unknown [no reports yet]




chaselevUse Chase-Lev Deques for higher-perf work-stealing.Disabled
newgenericProvide instances for the new par-classes generic Par programming interface.Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainers' corner

For package maintainers and hackage trustees