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

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to