
On Wed, Mar 25, 2009 at 9:40 AM, Michael Mossey
Zachary Turner wrote:
Which book or tutorial has the best exercises? Whenever I learn a language I like to do tons of exercises, and in fact I keep a list of books with great exercises. I currently have Real World Haskell and Programming in Haskell (Hutton), but I feel the exercises in these books are lacking.
Hi Zachary, great question. I just recently purchased "Real World Haskell" and "The Haskell School of Expression" (SOE). I'm also working through Hal Daume III's "Yet Another Haskell Tutorial" (YAHT), free online.
YAHT has some hard exercises, early on. He introduces continuations in chapter 4, briefly, and then casually asks you to rewrite map and filter in continuation-passing-style. I was stumped. But most of the exercises are approachable.
I have looked at Simon Thompson's book (The Craft of Functional Programming) in the bookstore and it looks elegantly written.
If I'm working alone, I also appreciate having the answers to the exercises available somewhere. I like to solve the problem, then go see how much more elegantly the answer key did it. There is a website with answers to SOE's exercises:
http://www.elbeno.com/haskell_soe_blog/?page_id=24
YAHT includes the answers in the appendix.
I don't know about Thompson's book; maybe he can tell us where to find the answers, or if they are in the appendix.
Thanks for the good suggestions! I'll definitely check out YAHT, hard exercises sound good. I also came across Richard Bird's Haskell book, which judging from what I found on Amazon's search inside, it looks like it has some pretty serious ones, so I might check that out too. If you're an exercise freak like me, you should take a look at Richard Stanley's Enumerative Combinatorics Volume 2, page 221 (problem 19), if for no other reason than to say you've seen the best exercise in the history of exercises, across all books and fields. :P ( http://www-math.mit.edu/~rstan/ec/catalan.pdf) Even if you don't understand the material, it's pretty evident after you've scrolled down a few pages why it's so amazing. Thanks again