Module

Matryoshka.Coalgebra

Package
purescript-matryoshka
Repository
purescript-contrib/purescript-matryoshka

#GCoalgebra Source

type GCoalgebra :: (Type -> Type) -> (Type -> Type) -> Type -> Typetype GCoalgebra n f a = a -> f (n a)

#GCoalgebraM Source

type GCoalgebraM :: (Type -> Type) -> (Type -> Type) -> (Type -> Type) -> Type -> Typetype GCoalgebraM n m f a = a -> m (f (n a))

#Coalgebra Source

type Coalgebra :: (Type -> Type) -> Type -> Typetype Coalgebra f a = a -> f a

#CoalgebraM Source

type CoalgebraM :: (Type -> Type) -> (Type -> Type) -> Type -> Typetype CoalgebraM m f a = a -> m (f a)

#ElgotCoalgebra Source

type ElgotCoalgebra :: (Type -> Type) -> (Type -> Type) -> Type -> Typetype ElgotCoalgebra e f a = a -> e (f a)