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,,,,,,,
Change logNone available
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) [details]
Copyright(c) Simon Marlow 2011
AuthorSimon Marlow, Ryan Newton
MaintainerSimon Marlow <>, Ryan Newton <>
CategoryControl, Parallelism, Monads
Home page
UploadedThu Dec 12 23:12:56 UTC 2013 by RyanNewton
DistributionsDebian:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:
Downloads22345 total (271 in last 30 days)
1 []
StatusDocs available [build log]
Successful builds reported [all 1 reports]




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

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


Maintainers' corner

For package maintainers and hackage trustees