kirancodes.me
To Proof Maintenance & Beyond!

Macro-by-Example: Deriving Syntactic Transformations from their Specifications

Eugene E. Kohlbecker, Mitchell Wand

Abstract

This paper presents two new developments. First, it describes a “macro-by-example” specification language for syntactic abstractions in Lisp and related languages. This specification language allows a more declarative specification of macros than conventional macro facilities do by giving a better treatment of iteration and mapping constructs. Second, it gives a formal semantics for the language and a derivation of a compiler from the semantics. This derivation is a practical application of semantics-directed compiler development methodology.

Related papers