category-extras-0.53.5: Various modules and constructs inspired by category theory
Source code
Contents
Index
Control.Functor.KanExtension.Interpreter
Portability
non-portable (rank-2 polymorphism)
Stability
experimental
Maintainer
Edward Kmett <ekmett@gmail.com>
Description
Ghani and Johann's Interp/InterpT types from ''Initial Algebra Semantics is Enough!''
http://crab.rutgers.edu/~pjohann/tlca07-rev.pdf
and its dual.
Documentation
type
Interpreter
y g h = y
:~>
Ran
g h
Source
type
InterpreterT
f g h =
forall
y.
Functor
y =>
Interpreter
y g h ->
Interpreter
(f y) g h
Source
interpreterAlgebra
::
InterpreterT
f g h ->
HAlgebra
f (
Ran
g h)
Source
algebraInterpreter
::
HFunctor
f =>
HAlgebra
f (
Ran
g h) ->
InterpreterT
f g h
Source
type
Cointerpreter
y g h =
Lan
g h
:~>
y
Source
type
CointerpreterT
f g h =
forall
y.
Functor
y =>
Cointerpreter
y g h ->
Cointerpreter
(f y) g h
Source
cointerpreterCoalgebra
::
CointerpreterT
f g h ->
HCoalgebra
f (
Lan
g h)
Source
coalgebraCointerpreter
::
HFunctor
f =>
HCoalgebra
f (
Lan
g h) ->
CointerpreterT
f g h
Source
Produced by
Haddock
version 2.4.2