I would first like to thank my colleagues in the functional programming group at the University of Kent. I have learned a tremendous amount from them, both about functional programming itself, and about how best to teach it.

The reviewers of this text have provided invaluable help in finding errors and infelicites of presentation. Each of them provided different, but useful, feedback; grateful thanks therefore to Howard Bowman, Allan Grimley, Steve Hill, Ron Knott, Janet Linington, Iain MacCallum, Phil Molyneux and David Turner. Needless to say, any errors which remain are the author's responsibility.

I am very grateful to Nick Riding for the loan of a portable PC on which many of the programs were developed, and to Barry Dean for his help in getting the PC to use Linux.

In preparing these Web pages I have had invaluable comments and advice from Ian Cooper, Sally Fincher, Louise Heery, Richard Jones, Bob O'Keefe and Dan Russell.

Final and most heartfelt thanks to Jane, Alice and Rory, for their unfailing support over the last year during which this book has come to fruition.


Last modifed 3 May 1995