Monad +Control -base

package MonadCatchIO-mtl
Provides a monad-transformer version of the Control.Exception.catch function. For this, it defines the MonadCatchIO class, a subset of MonadIO. It defines proper instances for most monad transformers in the mtl library. Version
package MonadCatchIO-mtl-foreign
Functions like alloca are provided, except not restricted to IO. Version 0.1
package MonadCatchIO-transformers
Provides functions to throw and catch exceptions. Unlike the functions from Control.Exception, which work in IO, these work in any stack of monad transformers (from the transformers package) with IO as the base monad. You can extend this functionality to other monads, by creating an instance of the MonadCatchIO class. Warning: this package is deprecated. Use the exceptions package instead, if possible. Version
package MonadCatchIO-transformers-foreign
Functions like alloca are provided, except not restricted to IO. Version 0.1
class Monad m => MonadCont m
mtl Control.Monad.Cont.Class, mtl Control.Monad.Cont
class Monad m => MonadError e m | m -> e
mtl Control.Monad.Error.Class, mtl Control.Monad.Error
The strategy of combining computations that can throw exceptions by bypassing bound functions from the point an exception is thrown to the point that it is handled. Is parameterized over the type of error information and the monad type constructor. It is common to use Either String as the monad type constructor for an error monad in which error descriptions take the form of strings. In that case and many other common cases the resulting monad is already defined as an instance of the MonadError class. You can also define your own error type and/or use a monad type constructor other than Either String or Either IOError. In these cases you will have to explicitly define instances of the Error and/or MonadError classes.
class Monad m => MonadIO m
transformers Control.Monad.IO.Class
Monads in which IO computations may be embedded. Any monad built by applying a sequence of monad transformers to the IO monad will be an instance of this class. Instances should satisfy the following laws, which state that liftIO is a transformer of monads: *  . return = *  (m >>= f) = liftIO m >>= > (liftIO .  
package Monadius
A fast-paced 2-D scrolling vector graphics clone of the arcade game Gradius; it is dedicated to the 20th anniversary of Gradius series. Version 0.99
package MonadLab
package MonadPrompt
"Prompting" monad that allows splitting the description of a computation from the implementation of the effects used in that computation. Version
package MonadRandom
Support for computations which consume random values. Version 0.1.12
package MonadRandomLazy
Support for lazy computations which consume random values. Version 0.1
class Monad m => MonadReader r m | m -> r
mtl Control.Monad.Reader.Class, mtl Control.Monad.Reader
See examples in Control.Monad.Reader. Note, the partially applied function type (->) r is a simple reader monad. See the instance declaration below.
class (Monoid w, MonadReader r m, MonadWriter w m, MonadState s m) => MonadRWS r w s m | m -> r, m -> w, m -> s
mtl Control.Monad.RWS.Class
class Monad m => MonadState s m | m -> s
mtl Control.Monad.State.Class, mtl Control.Monad.State.Lazy, mtl Control.Monad.State.Strict
Minimal definition is either both of get and put or just state
class MonadTrans t
transformers Control.Monad.Trans.Class
The class of monad transformers. Instances should satisfy the following laws, which state that lift is a transformer of monads: *  . return = *  (m >>= f) = lift m >>= > (lift .  
class (Monoid w, Monad m) => MonadWriter w m | m -> w
mtl Control.Monad.Writer.Class, mtl Control.Monad.Writer.Lazy, mtl Control.Monad.Writer.Strict
package monad-abort-fd
This package provides automated lifting of operations via functional dependencies for the transformers-abort package. Version 0.4
package monad-atom
package monad-atom-simple
Monadically map objects to unique ints. Version 0.0.2

Show more results