Last updated on 13th January 2011

Ordering; Description; Reviews; Slides; Videos; Code; Solutions; Errata.


spacer

Programming in Haskell

Graham Hutton, University of Nottingham
Cambridge University Press, 2007

Paperback: £23.99 / $45.00 (ISBN-13: 9780521692694 | ISBN-10: 0521692695)
Hardback: £60.00 / $115.00 (ISBN-13: 9780521871723 | ISBN-10: 0521871727)
eBook: $36.00 (ISBN-13: 9780511292187 | ISBN-10: 051129218X)
Kindle: $36.00 (ASIN: B001FSKE6Q)

Copies can be ordered from any book retailer, such as Cambridge, Amazonspacer , Powells, Barnes and Noble, or eBooks. In the UK, it is available from Cambridge, Amazonspacer , Blackwells, Waterstones, Play, and even Tesco! Ordering the book via either of the preceeding referral links to Amazon gives a higher return to the author, for the same price to the purchaser.

Translations:

Description

Haskell is one of the leading languages for teaching functional programming, enabling students to write simpler and cleaner code, and to learn how to structure and reason about programs. This introduction is ideal for beginners: it requires no previous programming experience and all concepts are explained from first principles via carefully chosen examples. Each chapter includes exercises that range from the straightforward to extended projects, plus suggestions for further reading on more advanced topics. The author is a leading Haskell researcher and instructor, well-known for his teaching skills. The presentation is clear and simple, and benefits from having been refined and class-tested over several years. The result is a text that can be used with courses, or for self-learning. Additional features include: freely available powerpoint slides, lecture videos, Haskell code and exercise solutions.

Reviews

In depth technical reviews:

Additional reviews:

Slides

Powerpoint slides that cover the main points from each chapter:

  1. Introduction
  2. First steps
  3. Types and classes
  4. Defining functions
  5. List comprehensions
  6. Recursive functions
  7. Higher-order functions
  8. Functional parsers
  9. Interactive programs
  10. Declaring types and classes
  11. The countdown problem
  12. Lazy evaluation
  13. Reasoning about programs

These slides may be used or modified for any educational purpose on a non-profit-making basis, provided that I am acknowledged as the original author.

Videos

Video lectures using the above powerpoint slides for each chapter were given by Erik Meijer on Microsoft's Channel 9:
  1. Introduction
  2. First steps
  3. Types and classes
  4. Defining functions
  5. List comprehensions
  6. Recursive functions
  7. Higher-order functions
  8. Functional parsers
  9. Interactive programs
  10. Declaring types and classes
  11. The countdown problem (guest lecture by myself)
  12. Lazy evaluation
  13. Reasoning about programs

These videos have been very popular (press release), and the total number of downloads now exceeds 800,000.

Code

Haskell code for each of the extended examples:

Solutions

Solutions to the exercises for each chapter are available here.

Errata

All known errata are listed here. Please contact the author if you spot any further issues.


gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.