The monad-task package
Task monad transformer can help refactor event and callback heavy programs into monads via co-routines. The idea is loosely based on Combining Events And Threads For Scalable Network Services, by Peng Li and Steve Zdancewic, in PLDI, 2007. (http://www.cis.upenn.edu/~stevez/papers/abstracts.html#LZ07), but with deterministic and co-oprative lightweight threads, also known as co-routines, so that the base monad can be anything ranging from IO to state monads, or your favorite monad transformer stack.
|Dependencies||base (<6), mtl (2.*), transformers (<0.4)|
|Maintainer||Paul Liu <firstname.lastname@example.org>|
|Source repository||git clone git://github.com/ninegua/monad-task.git|
|Upload date||Fri Aug 31 06:30:02 UTC 2012|