After a surprisingly long time I'm releasing a new version of my monads
library, focussed on expressivity and correctness:

https://github.com/bwo/monads

Leiningen:

[bwo/monads "0.2.2"]


Improvements from 0.1.0 include:

- change from maps to protocols for monad implementations, which has
increased flexibility and speed (this library is once again a little faster
than morph)

- all monad implementations interoperate with algo.generic.functor

- monad transformers automatically lift operations from "inner" monads, if
they're supported

- a combined reader/writer/state monad (and transformer) was introduced,
and the (faulty) list-t monad transformer was removed

- improvements to call/cc, shift, and reset for the continuation monad

- an applicative functor protocol was introduced, and implementations
provided for several existing types and all monad implementations.

Also, the `mdo` syntax macro was abstracted out and can now accept an
arbitrary user-provided function for doing monadic binds, which should mean
that it can be used with other libraries, though I haven't actually tested
this.

-- 
Ben Wolfson
"Human kind has used its intelligence to vary the flavour of drinks, which
may be sweet, aromatic, fermented or spirit-based. ... Family and social
life also offer numerous other occasions to consume drinks for pleasure."
[Larousse, "Drink" entry]

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to