[Haskell-cafe] [ANN] transformers-base, transformers-abort, monad-abort-fd

Mikhail Vorozhtsov mikhail.vorozhtsov at gmail.com
Thu Nov 10 12:58:15 CET 2011


Hi Cafe.

I've been using these three small transformer libraries for awhile, so 
it's probably time to announce them.

transformers-base[1] introduces a generalized version of MonadIO, 
MonadBase (BaseM in monadLib terms). It's very useful when you are 
trying to make a stateful API work in both IO and STM (and all 
transformer stacks on top of them).

transformers-abort[2] basically gives you two versions of EitherT, one 
for errors and one for short-circuiting. Includes instances for 
semigroupoids and monad-control classes.

monad-abort-fd[3] is a typical companion auto-lifter package for 
transformers-abort. But it also provides a generalized version[4] of 
Control.Exception which tries to thread effects properly (e.g. 
finalizers can read (if control didn't escape) and modify the state in 
StateT).

[1] http://hackage.haskell.org/package/transformers-base
[2] http://hackage.haskell.org/package/transformers-abort
[3] http://hackage.haskell.org/package/monad-abort-fd
[4] 
http://hackage.haskell.org/packages/archive/monad-abort-fd/0.3/doc/html/src/Control-Monad-Exception.html



More information about the Haskell-Cafe mailing list