Data.Comonad.Linear
class Functor w => Comonad (w :: Type -> Type) where Source #
Methods
extract :: w a %1 -> a Source #
duplicate :: w a %1 -> w (w a) Source #
Defined in Data.Comonad.Linear
extract :: Ur a %1 -> a Source #
duplicate :: Ur a %1 -> Ur (Ur a) Source #
Defined in Control.Monad.Borrow.Pure.Affine.Internal
extract :: Aff a %1 -> a Source #
duplicate :: Aff a %1 -> Aff (Aff a) Source #
class Comonad w => ComonadApply (w :: Type -> Type) where Source #
(<@>) :: w (a %1 -> b) %1 -> w a %1 -> w b infixl 4 Source #
(<@>) :: Ur (a %1 -> b) %1 -> Ur a %1 -> Ur b Source #
(<@>) :: Aff (a %1 -> b) %1 -> Aff a %1 -> Aff b Source #