Portability | portable |
---|---|
Stability | provisional |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Safe Haskell | None |
The trace comonad transformer (aka the cowriter or exponential comonad transformer).
- type Traced m = TracedT m Identity
- traced :: (m -> a) -> Traced m a
- runTraced :: Traced m a -> m -> a
- newtype TracedT m w a = TracedT {
- runTracedT :: w (m -> a)
- trace :: Comonad w => m -> TracedT m w a -> a
- listen :: Functor w => TracedT m w a -> TracedT m w (a, m)
- listens :: Functor w => (m -> b) -> TracedT m w a -> TracedT m w (a, b)
- censor :: Functor w => (m -> m) -> TracedT m w a -> TracedT m w a
Traced comonad
Traced comonad transformer
TracedT | |
|
Monoid m => ComonadTrans (TracedT m) | |
Monoid m => ComonadHoist (TracedT m) | |
Functor w => Functor (TracedT m w) | |
(Typeable s, Typeable1 w) => Typeable1 (TracedT s w) | |
(Functor (TracedT m w), Applicative w) => Applicative (TracedT m w) | |
(Functor (TracedT m w), Comonad w, Monoid m) => Comonad (TracedT m w) | |
(Comonad (TracedT m w), ComonadApply w, Monoid m) => ComonadApply (TracedT m w) | |
(Functor (TracedT m w), Distributive w) => Distributive (TracedT m w) | |
(Functor (TracedT m w), Apply w) => Apply (TracedT m w) | |
(Functor (TracedT m w), Extend w, Semigroup m) => Extend (TracedT m w) |