monad-control-0.2.0.3: monad-control.cabal
Name: monad-control
Version: 0.2.0.3
Synopsis: Lift control operations, like exception catching, through monad transformers
Description:
This package defines the type class @MonadControlIO@, a subset of
@MonadIO@ into which generic control operations such as @catch@ can
be lifted from @IO@. Instances are based on monad transformers in
@MonadTransControl@, which includes all standard monad transformers
in the @transformers@ library except @ContT@. For convenience, it
provides a wrapped version of @Control.Exception@ with types
generalized from @IO@ to all monads in @MonadControlIO@.
.
Note that this package is a rewrite of Anders Kaseorg's @monad-peel@ library.
The main difference is that this package provides CPS style
operators and exploits the @RankNTypes@ language extension to
simplify most definitions.
.
The package includes a copy of the @monad-peel@ testsuite written by Anders Kaseorg.
The tests can be performed by using @cabal test@.
.
The following @critertion@ based benchmark shows that @monad-control@
is on average about 2.5 times faster than @monad-peel@:
.
<https://github.com/basvandijk/bench-monad-peel-control>
License: BSD3
License-file: LICENSE
Author: Bas van Dijk, Anders Kaseorg
Maintainer: Bas van Dijk <v.dijk.bas@gmail.com>
Copyright: (c) 2011 Bas van Dijk, Anders Kaseorg
Homepage: https://github.com/basvandijk/monad-control/
Bug-reports: https://github.com/basvandijk/monad-control/issues
Category: Control
Build-type: Custom
Cabal-version: >= 1.9.2
extra-source-files: README.markdown, NEWS
-- TODO: Remove when http://hackage.haskell.org/trac/hackage/ticket/792 is fixed:
extra-source-files: test.hs
--------------------------------------------------------------------------------
source-repository head
type: git
location: git://github.com/basvandijk/monad-control.git
--------------------------------------------------------------------------------
Library
Exposed-modules: Control.Monad.Trans.Control
Control.Monad.IO.Control
Control.Exception.Control
Build-depends: base >= 3 && < 4.5
, base-unicode-symbols >= 0.1.1 && < 0.3
, transformers >= 0.2 && < 0.3
Ghc-options: -Wall
--------------------------------------------------------------------------------
test-suite test-threads
type: exitcode-stdio-1.0
main-is: test.hs
ghc-options: -Wall
build-depends: base >= 3 && < 4.5
, base-unicode-symbols >= 0.1.1 && < 0.3
, transformers >= 0.2 && < 0.3
, HUnit >= 1.2.2 && < 1.3
, test-framework >= 0.2.4 && < 0.5
, test-framework-hunit >= 0.2.4 && < 0.3
--------------------------------------------------------------------------------