[clean-list] Clean in the Real World
Tomasz Zielonka
t.zielonka@students.mimuw.edu.pl
Wed, 24 Dec 2003 09:08:48 +0100
On Wed, Dec 24, 2003 at 01:43:29AM +0000, Robin Green wrote:
> On Wed, Dec 24, 2003 at 12:04:53AM +0100, Tomasz Zielonka wrote:
> >
> > After some getting used to it, Monads are a pleasure to work with. If
> > there is anything in Haskell that gets in my way, it ain't Monads.
>
> But do you think the average "Visual Basic for Dummies" type of programmer
> could get to grips with it?
Why not? I don't feel qualified to judge who can or can't learn
something.
I think I have acquired quite a good (informal) understanding of monads.
Besides IO monad I often use various other monads also in combination
with monad transformers. I also define my own monad classes and types
achieving increased modularity and even efficiency.
Yet I have _zero_ knowledge about category theory and little formal
preparation in functional programming (I was taught SML in a one
semester course).
My way to learn monads was by small experiments, thinking and use in
small to medium sized programs.
I paid with a couple day headache for freeing myself from the
mainstream programming language mind-cage. Then about a month before
I got quite comfortable with monads.
So be prepared for hard work, but one that really pays off.
> If so, please point me towards a simple "Monads for Dummies" document.
> I would like to read it. ;-)
I didn't use such a tutorial then, but please try first three links in
section ,,Using Monads'' of http://www.haskell.org/bookshelf
> If not, I will continue to advocate for doing I/O type stuff in
> imperative languages.
I hope you won't :)
Best regards,
Tom
--
.signature: Too many levels of symbolic links