[Haskell-cafe] Writing "Haskell For Dummies Or At Least For
People Who Feel Like Dummies When They See The Word 'Monad'"
catamorphism at gmail.com
Mon Dec 11 17:32:48 EST 2006
I think this might be a good time to step back and make some general
comments of my own.
I learned Haskell in the summer of 2000. I see that that's exactly
when SOE was published. I didn't have a copy. (I did acquire a copy of
SOE about two years later, when I didn't need it anymore :-) I did
have another book whose name I won't mention that I didn't find
entirely helpful (I won't mention its name since I don't remember
entirely for sure which book it was).
I remember sitting in a windowless office trying to figure out why I
couldn't seem to find any function that had the type IO a -> a. I'm
thinking about that now because I hope to be able to not forget what
it was like to be in that frame of mind. I'm sure SOE answers that
question early on. But newbies on #haskell still ask it pretty often
anyway. Obviously, there will always be people who don't know how to
pick up a book, but on the other hand, I don't think that the problem
of how to explain Haskell to beginners is solved yet.
So the book that I want to write, hopefully with help from a few other
people (maybe some of the people who've been contributing to the
discussion so far, maybe others) would be aimed at a beginner (not a
beginning programmer, but someone who's starting *perhaps* because
they want to contribute to an open-source project that's written in
Haskell, because there are such projects now that aren't Haskell
compilers) who wants to get to the point where they can get real work
done. And I'm not thinking of it as a textbook. Maybe this is way too
ambitious. But I know that I managed to get from wondering where the
IO a -> a function was to writing my own monad transformers, mostly by
fumbling around in the dark, and I can't help thinking that there
might be a possible book that would -- if not make it that much
*easier* for somebody else to do the same -- at least allow *more*
people to do the same.
Kirsten Chevalier* chevalier at alum.wellesley.edu *Often in error, never in doubt
"and the things I'm working on are invisible to everyone"--Meg Hutchinson
More information about the Haskell-Cafe