Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Synopsis
- class (Extractable t, Extendable t) => Comonad t
Documentation
class (Extractable t, Extendable t) => Comonad t Source #
Let f :: (Pointable t, Bindable t) => t a -> b Let g :: (Pointable t, Bindable t) => t a -> b
When providing a new instance, you should ensure it satisfies the three laws: * Left identity: extend extract ≡ identity * Right identity: extract . extend f ≡ f * Associativity: extend f . extend g ≡ extend (f . extend g)
Instances
Comonad (Product a) Source # | |
Defined in Data.Functor.Product |