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. © 1988, ACM. All rights reserved.
CITATION STYLE
Pfenning, F., & Elliot, C. (1988). Higher-Order Abstract Syntax. ACM SIGPLAN Notices, 23(7), 199–208. https://doi.org/10.1145/960116.54010
Mendeley helps you to discover research relevant for your work.