Graham Hutton: Programming in Haskell

The first five chapters of Hutton's introductory Haskell book are online.

The chapters cover fairly basic features, and wouldn't be of interest to the Haskell experts among us, except as teaching material.

However, those intrigued by all the recent references to Haskell can get a taste of what Haskell is about from this readable introduction.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.


It's been updated to seven chapters.

a note on the 8th

The first seven chapters of Hutton's book were phenomenal from a pedagogic standpoint. He introduces the concepts succinctly, and cleanly, with interesting, and even fun examples. As far as the first seven chapters goes, the book is sufficient for learning and understanding the concepts.

Then comes chapter 8, which in my eyes, is a disappointment. In the associated web material he admits that the code in the book will not work. There is help; his tutorial, "Monadic Parser Combinators" is much clearer in presentation, because he explicitly makes use of monads in refactoring the parser. But even in that tutorial, there is an admission, that the above code will not work directly, though he lists some possible remedies.

Conclusion, it may not be wise for someone who has never been exposed to parsers or monads, to go through this chapter alone. The chapter would have been much better for self-study, if monads were mentioned upfront, even without explanation, and a working parser was developed with monads from the ground up. On the other hand, with a good instructor, his presentation would have been great, because it would have showed the learnees the benefits and simplicity of using monads to do the parsing.

Links broken

Although there are Draft copies of the book found online, the links here to preview chapters are broken and no longer available.