Portability | portable |
---|---|
Stability | provisional |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Safe Haskell | Safe-Infered |
Discont
is the density comonad of a constant functor, just as Cont
is a
Codensity monad of a constant functor. (For the definition of Density and
Codensity, see the non-Haskell 98 adjunctions
package)
Note that while Discont
and Store
are isomorphic, DiscontT
and StoreT
are not.
Like the memoizing store comonad, version memoizes the result of applying the continuation to the current context.
The discontinuation
comonad
The discontinuation comonad transformer
runDiscont :: Discont s a -> (s -> a, s)Source
runDiscontT :: DiscontT s w a -> (w s -> a, w s)Source