Portability | non-portable (fundeps, MPTCs) |
---|---|
Stability | experimental |
Maintainer | Edward Kmett <ekmett@gmail.com> |
- class Comonad w => ComonadDiscont s w | w -> s where
- callCV :: w (w (w a -> a) -> b) -> b
- label :: Comonad w => DiscontT s w a -> s
- type Discont s = DiscontT s Identity
- discont :: (s -> a) -> s -> Discont s a
- runDiscont :: Discont s a -> (s -> a, s)
- data DiscontT s w a = DiscontT (w s -> a) (w s)
- runDiscontT :: DiscontT s w a -> (w s -> a, w s)
- module Control.Comonad
- module Control.Comonad.Trans.Class
ComonadDiscont class
class Comonad w => ComonadDiscont s w | w -> s whereSource
ComonadDiscont s w => ComonadDiscont s (DiscontT k w) | |
ComonadDiscont s w => ComonadDiscont s (DiscontT k w) | |
ComonadDiscont s w => ComonadDiscont s (DiscontT k w) |
The Discont comonad
runDiscont :: Discont s a -> (s -> a, s)
The DiscontT comonad transformer
data DiscontT s w a
DiscontT (w s -> a) (w s) |
ComonadTraced m w => ComonadTraced m (DiscontT k w) | |
ComonadStore s w => ComonadStore s (DiscontT k w) | |
ComonadEnv e w => ComonadEnv e (DiscontT t w) | |
ComonadDiscont s w => ComonadDiscont s (DiscontT k w) | |
ComonadTrans (DiscontT s) | |
Functor (DiscontT s w) | |
(Typeable s, Typeable1 w) => Typeable1 (DiscontT s w) | |
Comonad (DiscontT s w) | |
Extend (DiscontT s w) |
runDiscontT :: DiscontT s w a -> (w s -> a, w s)
Re-exported modules
module Control.Comonad
module Control.Comonad.Trans.Class