category-extras-0.44.1: Various modules and constructs inspired by category theory.Source codeContentsIndex
Control.Morphism.Apo
Portabilitynon-portable (rank-2 polymorphism)
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>
Contents
Unfold Sugar
Distributive Law Combinators
Description
Traditional operators, shown here to show how to roll your own
Synopsis
apo :: Functor f => CoAlgM f (Apo f) a -> a -> Fix f
g_apo :: Functor f => CoAlg f b -> CoAlgM f (GApo b) a -> a -> Fix f
type Apo f a = Either (Fix f) a
type ApoT f m a = EitherT (Fix f) m a
type GApo b a = Either b a
type GApoT b m a = EitherT b m a
distGApo :: Functor f => CoAlg f b -> Dist (Either b) f
distGApoT :: (Functor f, Monad m) => CoAlgM f m b -> Dist m f -> Dist (EitherT b m) f
distApoT :: (Functor f, Monad m) => Dist m f -> Dist (ApoT f m) f
Unfold Sugar
apo :: Functor f => CoAlgM f (Apo f) a -> a -> Fix fSource
g_apo :: Functor f => CoAlg f b -> CoAlgM f (GApo b) a -> a -> Fix fSource
type Apo f a = Either (Fix f) aSource
type ApoT f m a = EitherT (Fix f) m aSource
type GApo b a = Either b aSource
type GApoT b m a = EitherT b m aSource
Distributive Law Combinators
distGApo :: Functor f => CoAlg f b -> Dist (Either b) fSource
distGApoT :: (Functor f, Monad m) => CoAlgM f m b -> Dist m f -> Dist (EitherT b m) fSource
distApoT :: (Functor f, Monad m) => Dist m f -> Dist (ApoT f m) fSource
Produced by Haddock version 2.1.0