transformers-0.5.1.0: Concrete functor and monad transformers

Copyright(c) Andy Gill 2001, (c) Oregon Graduate Institute of Science and Technology, 2001
LicenseBSD-style (see the file LICENSE)
MaintainerR.Paterson@city.ac.uk
Stabilityexperimental
Portabilityportable
Safe HaskellSafe
LanguageHaskell98

Control.Monad.Trans.List

Contents

Description

The ListT monad transformer, adding backtracking to a given monad, which must be commutative.

Synopsis

The ListT monad transformer

newtype ListT m a Source

Parameterizable list monad, with an inner monad.

Note: this does not yield a monad unless the argument monad is commutative.

Constructors

ListT 

Fields

runListT :: m [a]
 

mapListT :: (m [a] -> n [b]) -> ListT m a -> ListT n b Source

Map between ListT computations.

Lifting other operations

liftCallCC :: CallCC m [a] [b] -> CallCC (ListT m) a b Source

Lift a callCC operation to the new monad.

liftCatch :: Catch e m [a] -> Catch e (ListT m) a Source

Lift a catchE operation to the new monad.