essence-of-live-coding-0.1.0.0: General purpose live coding framework

Safe HaskellSafe
LanguageHaskell2010

LiveCoding.Coalgebra

Documentation

type StateTransition m a b s = a -> m (b, s) Source #

data MSF m a b Source #

Constructors

MSF 

Fields

data Coalg m a b where Source #

Constructors

Coalg :: s -> (s -> StateTransition m a b s) -> Coalg m a b 

finality :: Monad m => Coalg m a b -> MSF m a b Source #

finalityC :: Monad m => Cell m a b -> MSF m a b Source #

coalgebra :: MSF m a b -> Coalg m a b Source #

coalgebraC :: Data (MSF m a b) => MSF m a b -> Cell m a b Source #

type AlgStructure m a b s = StateTransition m a b s -> s Source #

data Alg m a b where Source #

Constructors

Alg :: s -> AlgStructure m a b s -> Alg m a b 

algMSF :: MSF m a b -> Alg m a b Source #

initiality :: Functor m => AlgStructure m a b s -> MSF m a b -> s Source #