DocumentCode
296254
Title
CACHET: an interactive, incremental-attribution-based program transformation system for deriving incremental programs
Author
Liu, Yanhong A.
Author_Institution
Dept. of Comput. Sci., Cornell Univ., Ithaca, NY, USA
fYear
1995
fDate
12-15 Nov 1995
Firstpage
19
Lastpage
26
Abstract
The paper describes the design and implementation of an interactive, incremental-attribution-based program transformation system, CACHET, that derives incremental programs from non-incremental programs written in a functional language. CACHET is designed as a programming environment and implemented using a language-based editor generator, the Synthesizer Generator, with extensions that support complex transformations. Transformations directly manipulate the program tree and take into consideration information obtained from program analyses. Program analyses are performed via attribute evaluation, which is done incrementally as transformations change the program tree. The overall approach also explores a general framework for describing dynamic program semantics using annotations, which allows interleaving transformations with external input, such as user input. Designing CACHET as a programming environment also facilitates the integration of program derivation and validation with interactive editing, compiling, debugging, and execution
Keywords
attribute grammars; functional programming; incremental compilers; interactive programming; knowledge based systems; program debugging; program verification; programming environments; software tools; system monitoring; CACHET programming environment; Synthesizer Generator; annotations; attribute evaluation; compiling; complex transformations; debugging; dynamic program semantics; execution; external input; functional language; incremental program derivation; interactive editing; interactive incremental-attribution-based program transformation system; interleaving transformations; language-based editor generator; nonincremental programs; program analyses; program derivation; program tree; program validation; user input; Computer science; Contracts; Databases; Information analysis; Interleaved codes; Performance analysis; Performance evaluation; Programming environments; Synthesizers; Usability;
fLanguage
English
Publisher
ieee
Conference_Titel
Knowledge-Based Software Engineering Conference, 1995 .Proceedings., 10th
Conference_Location
Boston, MA
ISSN
1068-3062
Print_ISBN
0-8186-7204-8
Type
conf
DOI
10.1109/KBSE.1995.490115
Filename
490115
Link To Document