Maintainer | gatlin@niltag.net |
---|---|
Stability | experimental |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Alternate implementation of CPS with linear types to see what, if any, benefits there may be from doing so.
Delimited Continuation Monad Transformer
data CPS (result :: k) (m :: k -> Type) (answer :: Type) where Source #
Continuation Passing Style:
- A monad whose side effect is flow-control.
-
- When m
is a Monad
then CPS
is a monad transformer over m
.
- However it should be noted that 'CPS r m' is a Monad
regardless of m
.
-
- Delimited continuation operators shift
and reset
have been defined in
- this module as well.