The distributed-process-monad-control package
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
This module exports instances for MonadBase IO and MonadBaseControl IO for the Process monad. This is for use in conjunction with a library requiring these instances, such as the lifted-base package.
A tutorial segment regarding use of this in distributed-process applications may be found here.
Please excercise caution in usage of this instance, as it can enable use of functions such as forkIO (or, fork from lifted-base) which compromise invariants in the Process monad and can lead to confusing and subtle issues. Always use the Cloud Haskell functions such as spawnLocal instead.
import Control.Distributed.Process.MonadBaseControl() import Control.Concurrent.MVar.Lifted (withMVar) processWithMVar :: MVar a -> (a -> Process b) -> Process b processWithMvar = withMVar
[Skip to ReadMe]
|Versions||0.4.2, 0.5.0, 0.5.1, 0.5.1.1, 0.5.1.1, 0.5.1.2|
|Change log||None available|
|Dependencies||base (>=4.4 && <=5), distributed-process (>=0.4.2 && <0.6.0), monad-control (>=0.3 && <1.1), transformers, transformers-base (>=0.4.1 && <=0.5.0) [details]|
|Source repository||head: git clone https://github.com/haskell-distributed/distributed-process-monad-control|
|Uploaded||Fri Jan 1 19:55:47 UTC 2016 by jeremyjh|
- distributed-process-monad-control-0.5.1.1.tar.gz [browse] (Cabal source package)
- Package description (included in the package)
For package maintainers and hackage trustees