The Implementation of Functional Programming Languages

Simon Peyton Jones

Published by Prentice Hall |

My 1987 book is now out of print, but it is available here in its entirety in PDF form.

Errata

  • Section 5.2.4, p87.  We need an extra rule

match us [] E = E

This accounts for the possibility that in the constructor rule (Section 5.2.4) there may be some non-nullary constructors for which there are no equations.

  • P168, line 2, “VAR” should be “TVAR”.