Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Modular specification of incremental program transformation systems
Carle A., Pollock L.  Software engineering (, Pittsburgh, PA, May 15-18, 1989)1871989.Type:Proceedings
Date Reviewed: Oct 1 1990

An attribute grammar for a source programming language is the result of extending the original context-free grammar by associating non-terminals with attributes, and productions with semantic equations. This paper applies the attribute grammar concept to a phase-oriented approach for the development of incremental transformation systems. A transformation system is divided into phases, which are specified by semantic functions based on the attribute grammar. The system can then be generated incrementally and evaluated automatically. In this way, we can incorporate new transformations by adding phases, or discard transformations by deletion. An incremental optimizer and an incremental parallelizing tool illustrate these concepts.

The authors suggest two approaches for phase-oriented development. In the first approach, the Synthesizer Generator of Reps and Teitelbaum is applied directly in order to incrementally generate a program and evaluate it. The authors found this to be inefficient because any iteration requires a complete reevaluation. As an alternative, they suggest a more efficient evaluation method, but this method is only a proposal and further information is not yet available.

On the whole, the thesis is supported by the authors’ general arguments. Little detail is provided to enable readers to appreciate, if not verify, the conjectures. In the incremental optimizer example, for instance, phases are said to be freely ordered and an iterate-until-stable style of recursion is said to terminate. If, however, we add two more phases that are not mutually independent (such as common subexpression elimination and inline expansion of procedural calls), will any ordering affect the degree of optimization? Will an iterate-until-stable recursion still terminate? I am unable to answer these questions in the absence of technical details or sophisticated examples.

Reviewer:  T.H. Tse Review #: CR114329
Bookmark and Share
 
Translator Writing Systems And Compiler Generators (D.3.4 ... )
 
 
Recursive Function Theory (F.4.1 ... )
 
 
Formal Definitions And Theory (D.3.1 )
 
 
Formal Languages (F.4.3 )
 
Would you recommend this review?
yes
no
Other reviews under "Translator Writing Systems And Compiler Generators": Date
The art of compiler design
Pittman T., Peters J., Prentice-Hall, Inc., Upper Saddle River, NJ, 1992. Type: Book (9780130481900)
Apr 1 1994
Compiler generation from denotational semantics
Paulson L., Cambridge University Press, New York, NY, 1984. Type: Book (9780521268431)
Jun 1 1985
Automatic compiler production: the front end
Reiss S. IEEE Transactions on Software Engineering SE-13(6): 609-627, 1987. Type: Article
Feb 1 1988
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2023 ThinkLoud®
Terms of Use
| Privacy Policy