category-extras-0.53.5: Various modules and constructs inspired by category theory

Portabilitynon-portable (rank-2 polymorphism)
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>

Control.Functor.Fix

Contents

Description

Since in Hask, Mu = Nu, we don't bother to distinguish them here

Synopsis

Functor fixpoint

newtype FixF f Source

Constructors

InF 

Fields

outF :: f (FixF f)
 

outM :: (Functor f, Monad m) => GCoalgebra f m (FixF f)Source

inW :: (Functor f, Comonad w) => GAlgebra f w (FixF f)Source

Bifunctor fixpoint

newtype Fix s a Source

Constructors

InB 

Fields

outB :: s a (Fix s a)
 

paugment :: PMonad f => (forall c. (f a c -> c) -> c) -> (a -> Fix f b) -> Fix f bSource

pcoaugment :: PComonad f => ((Fix f a -> f b (Fix f a)) -> Fix f b) -> (Fix f a -> b) -> Fix f bSource