Skip to product information
1 of 1
Regular price £79.75 GBP
Regular price £76.99 GBP Sale price £79.75 GBP
Sale Sold out
Free UK Shipping

Freshly Printed - allow 8 days lead

The Optimal Implementation of Functional Programming Languages

First account of the subject by two of its leading exponents. Essentially self-contained.

Andrea Asperti (Author), Stefano Guerrini (Author)

9780521621120, Cambridge University Press

Hardback, published 3 December 1998

408 pages
22.9 x 15.2 x 2.7 cm, 0.77 kg

All traditional implementation techniques for functional languages (mostly based on supercombinators, environments or continuations) fail to avoid useless repetition of work; they are not 'optimal' in their implementation of sharing, often causing a catastrophic, exponential explosion in reduction time. Optimal reduction is an innovative graph reduction technique for functional expressions, introduced by Lamping in 1990, that solves the sharing problem. This book, the first in the subject, is a comprehensive account by two of its leading exponents. Practical implementation aspects are fully covered as are the mathematical underpinnings of the subject. The relationship to the pioneering work of Lévy and to Girard's more recent Geometry of Interaction are explored; optimal reduction is thereby revealed as a prime example of how a beautiful mathematical theory can lead to practical benefit. The book is essentially self-contained, requiring no more than basic familiarity with functional languages. It will be welcomed by graduate students and research workers in lambda calculus, functional programming or linear logic.

1. Introduction
2. Optimal reduction
3. The full algorithm
4. Optimal reductions and linear logic
5. Zig-zag
6. Paths
7. Read-back
8. Other translations in sharing graphs
9. Safe nodes
10. Complexity
11. Functional programming
12. Source language
Bibliography
Index.

Subject Areas: Mathematical theory of computation [UYA], Programming & scripting languages: general [UMX]

View full details