Don't really understand what point you're making. The way I see it, monads are incredibly useful for combining functions that all have the same signature. When you realize that that's the domain you're working in, you can use a monad and raise the level of abstraction that you're working at. In this area, the task seems to be educating programmers about how to use monads effectively. Lot of work yet to do, yet the theoretical foundation seems to be solid.
Composing monads is a totally different subject with a lot of theoretical work yet to be done. Presently, monad transformers seem to be the way forward, but that's open to debate as you've pointed out. Vagif Verdi wrote: > On Dec 22, 2:10 pm, jim <jim.d...@gmail.com> wrote: > > Chouser, > > > > You're right that maybe-comp is simpler. Once you realize that the > > functions you want to compose are monadic functions under the maybe-m > > monad, you get that composition for 'free', with no further mental > > effort. > > Except different types of monads do not compose, so you have to create > another artificial structure called monad transformers. And these new > structures introduce so much new artificial complexity that any > possible simplification becomes a moot point. > > This fact is realized even in haskell community: > http://lambda-the-ultimate.org/node/2749#comment-41078 > > I'd say that monads add way too much complexity in most cases. > Especially in impure languages where you can do many things much > simpler than involving monads. -- 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