monad-resumption- Resumption and reactive resumption monads for Haskell.

Safe HaskellSafe-Inferred




(<||>) :: Monad m => ReacT i1 o1 m a -> ReacT i2 o2 m a -> ReacT (i1, i2) (o1, o2) m a Source

The parallel operator for combining computations in ReacT that share the same underlying monad and halting types. No guarantees are given to which device's halting message will be seen by a handler.

refold :: Monad m => (o1 -> o2) -> (o1 -> i2 -> i1) -> ReacT i1 o1 m a -> ReacT i2 o2 m a Source

The refold operator changes the output and input types of a reactive resumption

pipeline :: Monad m => ReacT i z m a -> ReacT z o m a -> ReacT i o m a Source

Chains two reactive resumptions together in a pipelined fashioned. That is, inputs and outputs are passed along between devices "tickwise".