category-extras-0.53.5: Various modules and constructs inspired by category theorySource codeContentsIndex
Control.Monad.Free
Portabilityportable
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>
Description
See http://wwwtcs.inf.tu-dresden.de/%7Evoigt/mpc08.pdf for the background on rep, abs and improve and their use. NB: the C type in that paper is just the right Kan extension of a monad along itself, also known as the monad generated by a functor: http://www.tac.mta.ca/tac/volumes/10/19/10-19.ps
Documentation
module Control.Monad.Parameterized
type PFree = PAp EitherSource
type Free f = Fix (PFree f)Source
runFree :: Free f a -> Either a (f (Free f a))Source
free :: Either a (f (Free f a)) -> Free f aSource
class (Functor f, Monad m) => MonadFree f m | m -> f whereSource
Methods
inFree :: f (m a) -> m aSource
show/hide Instances
class MonadFree f m => RunMonadFree f m | m -> f whereSource
Methods
cataFree :: (c -> a) -> Algebra f a -> m c -> aSource
show/hide Instances
Produced by Haddock version 2.4.2