Data.Functor.HHFree
type f :~~> g
data HHFree c f a b
unit
rightAdjunct
counit
leftAdjunct
transform
hfmap
bind