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

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 `IVar`

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