Hostname: page-component-78c5997874-94fs2 Total loading time: 0 Render date: 2024-11-03T05:33:44.978Z Has data issue: false hasContentIssue false

Closed reduction: explicit substitutions without $\alpha$-conversion

Published online by Cambridge University Press:  14 March 2005

M. FERNÁNDEZ
Affiliation:
Department of Computer Science, King's College London Strand, London, WC2R 2LS U.K. Email: [email protected], [email protected], [email protected]
I. MACKIE
Affiliation:
Department of Computer Science, King's College London Strand, London, WC2R 2LS U.K. Email: [email protected], [email protected], [email protected]
F-R. SINOT
Affiliation:
Department of Computer Science, King's College London Strand, London, WC2R 2LS U.K. Email: [email protected], [email protected], [email protected] LIX, École Polytechnique, 91128 Palaiseau cedex, France

Abstract

Starting from the $\lambda$-calculus with names, we develop a family of calculi with explicit substitutions that overcome the usual syntactical problems of substitution. The key idea is that only closed substitutions can be moved through certain constructs. This gives a weak form of reduction, called closed reduction, which is rich enough to capture both the call-by-value and call-by-name evaluation strategies in the $\lambda$-calculus. Moreover, since substitutions can move through abstractions and reductions are allowed under abstractions (if certain conditions hold), closed reduction naturally provides an efficient notion of reduction with a high degree of sharing and low overheads. We present a family of abstract machines for closed reduction. Our benchmarks show that closed reduction performs better than all standard weak strategies, and its low overheads make it more efficient than optimal reduction in many cases.

Type
Paper
Copyright
2005 Cambridge University Press

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)