Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class StaticFunctor w => StaticExtend w where
- class StaticExtend w => StaticComonad w where
Documentation
class StaticFunctor w => StaticExtend w where Source #
Instances of StaticExtend
should satisfy the following laws:
staticExtend
f =staticMap
f .staticDuplicate
staticDuplicate
=staticExtend
(staticid
)staticExtend
f .staticExtend
g =staticExtend
(static (.)cap
fcap
staticExtend
g)staticDuplicate
.staticDuplicate
=staticMap
(staticstaticDuplicate
) .staticDuplicate
staticDuplicate :: Typeable a => w a -> w (w a) Source #
staticExtend :: (Typeable a, Typeable b) => Closure (w a -> b) -> w a -> w b Source #
class StaticExtend w => StaticComonad w where Source #
staticExtract :: Typeable a => w a -> a Source #