monad-primitive-0.1: Type class for monad transformers stack with pirimitive base monad.

Portabilitynon-portable
Stabilityexperimental
Maintaineralexey.skladnoy@gmail.com
Safe HaskellNone

Control.Monad.Primitive.Class

Description

 

Synopsis

Documentation

class (PrimMonad (BasePrimMonad m), Monad m) => MonadPrim m whereSource

Monads in which computation based on primitive monad (instance of PrimMonad) could be embedded. Instances must obey following laws:

 liftPrim . return  = return
 liftPrim (m >>= f) = liftPrim m >>= liftPrim f

Associated Types

type BasePrimMonad m :: * -> *Source

Methods

liftPrim :: BasePrimMonad m a -> m aSource

Instances