Algebra.Arrow
class Arrow k
(>>^)
(^>>)
class Apply k
comapA
app
dup
data Kleisli m a b
data ListA k a b