Lazy and incremental program generation
- 1 May 1994
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 16 (3) , 1010-1023
- https://doi.org/10.1145/177492.177750
Abstract
Current program generators usually operate in a greedy manner in the sense that a program must be generated in its entirety before it can be used. If generation time is scarce, or if the input to the generator is subject to modification, it may be better to be more cautious and to generate only those parts of the program that are indispensable for processing the particular data at hand. We call this lazy program generation . Another, closely related strategy is incremental program generation . When its input is modified, an incremental generator will try to make a corresponding modification in its output rather than generate a completely new program. It may be advantageous to use a combination of both strategies in program generators that have to operate in a highly dynamic and/or interactive environment.Keywords
This publication has 12 references indexed in Scilit:
- Incremental generation of lexical scannersACM Transactions on Programming Languages and Systems, 1992
- INCACM Transactions on Programming Languages and Systems, 1991
- Incremental generation of LR parsersComputer Languages, 1990
- Lazy recursive descent parsing for modular language implementationSoftware: Practice and Experience, 1990
- LexAGen: An interactive incremental scanner generatorSoftware: Practice and Experience, 1990
- Incremental generation of parsersIEEE Transactions on Software Engineering, 1990
- The syntax definition formalism SDF—reference manual—ACM SIGPLAN Notices, 1989
- Symbolic debugging through incremental compilation in an integrated environmentJournal of Systems and Software, 1983
- Pattern Matching in TreesJournal of the ACM, 1982
- Throw-away compilingSoftware: Practice and Experience, 1976