interruptible: Monad transformers that can be run and resumed later, conserving their context.
Given an inner monad and a transformer: > (Monad m, MonadTrans t) If t is an interruptible transformer, it becomes possible to intercalate executions on the t context with executions over the inner monad m by breaking the execution on t and resuming it later.
Interruptible monads implement the runI function so that, given 'f :: a -> t m b' and
'g :: b -> t m c', 'resume (f >>= g)' is equivalent to 'x -> resume f x >>= resume g'.
That makes it possible to intercalate the execution of different monads, and even to return a monadic context for another function to resume it.
Downloads
- interruptible-0.1.1.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
| Versions [RSS] | 0.1.0.0, 0.1.1.0, 0.1.1.1 |
|---|---|
| Dependencies | base (>=4.7 && <4.9), either, lifted-base, monad-control, transformers [details] |
| License | BSD-3-Clause |
| Author | Marcos Dumay de Medeiros |
| Maintainer | marcos@marcosdumay.com |
| Uploaded | by marcosdumay at 2016-04-02T16:31:22Z |
| Category | Control |
| Home page | https://sealgram.com/git/haskell/interruptible/ |
| Source repo | head: git clone https://sealgram.com/git/haskell/interruptible/ -b master this: git clone https://sealgram.com/git/haskell/interruptible/(tag 0.1.1.0) |
| Reverse Dependencies | 1 direct, 1 indirect [details] |
| Downloads | 2560 total (14 in the last 30 days) |
| Rating | (no votes yet) [estimated by Bayesian average] |
| Your Rating | |
| Status | Docs uploaded by user Build status unknown [no reports yet] |