Higher-order abstract syntax
- 1 June 1988
- journal article
- conference paper
- Published by Association for Computing Machinery (ACM) in ACM SIGPLAN Notices
- Vol. 23 (7) , 199-208
- https://doi.org/10.1145/960116.54010
Abstract
We describe motivation, design, use, and implementation of higher-order abstract syntax as a central representation for programs, formulas, rules, and other syntactic objects in program manipulation and other formal systems where matching and substitution or unification are central operations. Higher-order abstract syntax incorporates name binding information in a uniform and language generic way. Thus it acts as a powerful link integrating diverse tools in such formal environments. We have implemented higher-order abstract syntax, a supporting matching and unification algorithm, and some clients in Common Lisp in the framework of the Ergo project at Carnegie Mellon University.Keywords
This publication has 6 references indexed in Scilit:
- Natural deduction as higher-order resolutionThe Journal of Logic Programming, 1986
- The PSG system: from formal language definitions to interactive programming environmentsACM Transactions on Programming Languages and Systems, 1986
- The synthesizer generatorPublished by Association for Computing Machinery (ACM) ,1984
- A Transformation System for Developing Recursive ProgramsJournal of the ACM, 1977
- A unification algorithm for typed -calculusTheoretical Computer Science, 1975
- A formulation of the simple theory of typesThe Journal of Symbolic Logic, 1940