-- Initial distributed-process-monad-control.cabal generated by cabal init.
-- For further documentation, see http://haskell.org/cabal/users-guide/
name: distributed-process-monad-control
version: 0.5.1.3
synopsis: Orphan instances for MonadBase and MonadBaseControl.
homepage: http://haskell-distributed.github.io
license: BSD3
license-file: LICENSE
author: Jeremy Huffman
maintainer: jeremy@jeremyhuffman.com
-- copyright:
category: Control
build-type: Simple
extra-source-files: README.md
cabal-version: >=1.10
description:
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
@<http://hackage.haskell.org/package/lifted-base lifted-base> package.
.
A tutorial segment regarding use of this in distributed-process applications may
be found <http://haskell-distributed.github.io/tutorials/3ch.html#monad-transformer-stacks 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.
.
example usage:
.
>import Control.Distributed.Process.MonadBaseControl()
>import Control.Concurrent.MVar.Lifted (withMVar)
>
>processWithMVar :: MVar a -> (a -> Process b) -> Process b
>processWithMvar = withMVar
library
exposed-modules: Control.Distributed.Process.MonadBaseControl
-- other-modules:
build-depends: base >= 4.4 && <= 5
, distributed-process >= 0.4.2 && < 0.8.0
, monad-control >= 0.3 && < 1.1
, transformers
, transformers-base >= 0.4.1 && <= 0.5.0
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall
source-repository head
type: git
location: https://github.com/haskell-distributed/distributed-process-monad-control