The Computer Journal
The Literate-Programming Paradigm
Computer
C: a language for high-level, efficient, and machine-independent dynamic code generation
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Multi-stage programming with explicit annotations
PEPM '97 Proceedings of the 1997 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
ACM Transactions on Software Engineering and Methodology (TOSEM)
TEX: The Program
Metafont: The Program
Design pattern implementation in Java and aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
CodeBricks: code fragments as building blocks
Proceedings of the 2003 ACM SIGPLAN workshop on Partial evaluation and semantics-based program manipulation
Routine run-time code generation
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Optimizations in distributed run-time compilation
Optimizations in distributed run-time compilation
Mumbo: A Rule-Based Implementation of a Run-time Program Generation Language
Electronic Notes in Theoretical Computer Science (ENTCS)
Optimizing marshalling by run-time program generation
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Source-level optimization of run-time program generators
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Hi-index | 0.00 |
Programmers frequently write program generators using the simple model of programs as text. The essence of this approach is its lack of structure. For this reason, it gets no respect from academic researchers. But the flip side of lacking structure is freedom from restrictions. We argue that the latter is important, and perhaps essential, in finding a willing audience for program generation among working programmers. Jumbo is a system for producing run-time program generators, which is designed to offer the programmer a "programs as strings" model to as great an extent as possible, though some constraints are inevitable. We show by several examples that these constraints still allow for both a natural and a powerful program generation model. We then discuss how the approach taken by Jumbo, though possessing less structure than some competing methods, still raises scientific problems that ought to be of interest to researchers in this area.