[Haskell-cafe] The problem with Monads...

Rafael Gustavo da Cunha Pereira Pinto RafaelGCPP.Linux at gmail.com
Tue Jan 13 11:09:01 EST 2009


Yes, I've read it twice, and it is a nice explanation that "yes, the reader
monad is an application and is a monad". How do I use it? Why not the
function itself? How would the plumbing work in a real world example?

BTW, the article is really great as an brief introduction to monad
transformers. For the whole concept of monads, my all time favorite is "The
Haskell Programmer's Guide to the IO Monad" by Stefan Klinger.

Chapters 14 to 19 of "Real World Haskell" also have a good introduction on
the usage of the monads, but it lacks other monads, like the RWS or the
Continuation...

See, that is my point. The mathematical concept of monads is very palatable.
The idea that monads are either patterns or structures to hide computations
in sequence is also very easy to see. But how do we use them?
Why should I use a Writer monad when I can use a (a,w) tuple?



On Tue, Jan 13, 2009 at 13:51, Jonathan Cast <jonathanccast at fastmail.fm>wrote:

> On Tue, 2009-01-13 at 12:56 -0200, Rafael Gustavo da Cunha Pereira Pinto
> wrote:
> >
> > Last night I was thinking on what makes monads so hard to take, and
> > came to a conclusion: the lack of a guided tour on the implemented
> > monads.
>
> ...
>
> > Inspired by the paper "Functional Programming with Overloading and
> > Higher-Order Polymorphism",
> >         Mark P Jones
> > (http://web.cecs.pdx.edu/~mpj/pubs/springschool.html<http://web.cecs.pdx.edu/%7Empj/pubs/springschool.html>
> )
> >           Advanced School of Functional Programming, 1995.
> >
> > SO WHAT?
>
> So have you read Jones' paper?  Or do you have a *concrete* explanation
> of how it differs from your desired `guided tour'?
>
> jcc
>
>
>


-- 
Rafael Gustavo da Cunha Pereira Pinto
Electronic Engineer, MSc.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20090113/3d4e09d1/attachment-0001.htm


More information about the Haskell-Cafe mailing list