Cont -is:module

Continuation monad. Cont r a is a CPS ("continuation-passing style") computation that produces an intermediate result of type a within a CPS computation whose final result type is r. The return function simply creates a continuation which passes the value on. The >>= operator adds the bound function into the continuation chain.
The continuation monad, which is non-strict. Cont r a is a CPS ("continuation-passing style") computation that produces an intermediate result of type a within a CPS computation whose final result type is r. The return function simply creates a continuation which passes the value on. The >>= operator adds the bound function into the continuation chain.
T
A continuation accepting an a and producing a b.
Continuous assignment, which occurs in a concurrent context.
A delimited continuation that can be used in a do block.
OK, consumed, continue with state s
Construct a continuation-passing computation from a function. (The inverse of runCont)
Cc: Other, Control
The class of contravariant functors. Whereas in Haskell, one can think of a Functor as containing or producing values, a contravariant functor is a functor that can be thought of as consuming values. As an example, consider the type of predicate functions a -> Bool. One such predicate might be negative x = x < 0, which classifies integers as to whether they are negative. However, given this predicate, we can re-use it in other situations, providing we have a way to map values to integers. For instance, we can use the negative predicate on a person's bank balance to work out if they are currently overdrawn:
newtype Predicate a = Predicate { getPredicate :: a -> Bool }

instance Contravariant Predicate where
contramap :: (a' -> a) -> (Predicate a -> Predicate a')
contramap f (Predicate p) = Predicate (p . f)
|   `- First, map the input...
`----- then apply the predicate.

overdrawn :: Predicate Person
overdrawn = contramap personBankBalance negative
Any instance should be subject to the following laws: Note, that the second law follows from the free theorem of the type of contramap and the first law, so you need only check that the former condition holds.
The continuation monad transformer. Can be used to add continuation handling to any type constructor: the Monad instance and most of the operations do not require m to be a monad. ContT is not a functor on the category of monads, and many operations cannot be lifted through it.
The continuation monad transformer. Can be used to add continuation handling to any type constructor: the Monad instance and most of the operations do not require m to be a monad. ContT is not a functor on the category of monads, and many operations cannot be lifted through it. ContT r m is strict if and only if m is.
This class provides a simple Lens that lets you view (and modify) information about whether or not a container contains a given Index.
The indexed store can be used to characterize a Lens and is used by cloneLens. Context a b t is isomorphic to newtype Context a b t = Context { runContext :: forall f. Functor f => (a -> f b) -> f t }, and to exists s. (s, Lens s t a b). A Context is like a Lens that has already been applied to a some structure.
type Context' a s = Context a a s
Control message type class. Each control message type has a numeric CmsgId and encode and decode functions.