I&C 2001
Higher-Order Substitutions
Abstract
The λσ-calculus is a concrete λ-calculus of explicit substitutions, designed for reasoning about implementations of λ-calculi. Higher-order abstract syntax is an approach to metaprogramming that explicitly captures the variable-binding aspects of programming language constructs. A new calculus of explicit substitutions for higher-order abstract syntax is introduced, allowing a high-level description of variable binding in object languages while also providing substitutions as explicit programmer-manipulable data objects. The new calculus is termed the λσβ 0-calculus, since it makes essential use of an extension of β 0-unification (described in another paper). Termination and confluence are verified for the λσβ 0-calculus similarly to that for the λσ-calculus, and an efficient implementation is given in terms of first-order renaming substitutions. The verification of confluence makes use of a verified adaptation of Nipkow's higher-order critical pairs lemma to the forms of rewrite rules required for the statement of the λσβ 0-calculus.
Authors
Keywords
No keywords are indexed for this paper.
Context
- Venue
- Information and Computation
- Archive span
- 1987-2026
- Indexed papers
- 3021
- Paper id
- 1123839637755449240