Pragmatic Aspects of Reusable Program Generators

Norman Ramsey

When writing a program generator requires considerable intellectual effort, it is pleasant to amortize that effort by using the generator to build more than one application. When a program generator serves multiple clients, however, the implementor must address pragmatic questions that implementors of single-use program generators can ignore. In how many languages should generated code be written? How should code be packaged? What should the interfaces to the client code look like? How should a user control variations? This paper uses examples from SLED, \-RTL, and ASDL to elaborate on these questions. It is hoped that the paper will stimulate discussion and the development of better techniques. Most urgently needed is a simple, clear way to control interfaces to generated code.

Full paper

The paper is available as US Letter PostScript (212K), US Letter PDF (247K), HTML (76K), US Letter TeX DVI (85K), gzipped US Letter PostScript (82K), and gzipped US Letter TeX DVI (34K).