Incremental dynamic semantics for language-based programming environments
- 1 April 1989
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 11 (2) , 169-193
- https://doi.org/10.1145/63264.63400
Abstract
Attribute grammars are a formal notation for expressing the static semantics of programming languages—those properties that can be derived from inspection of the program text. Attribute grammars have become popular as a mechanism for generating language-based programming environments that incrementally perform symbol resolution, type checking, code generation, and derivation of other static semantic properties as the program is modified. However, attribute grammars are not suitable for expressing dynamic semantics—those properties that reflect the history of program execution and/or user interactions with the programming environment. This paper presents action equations , an extension of attribute grammars suitable for specifying the static and the dynamic semantics of programming languages. It describes how action equations can be used to generate language-based programming environments that incrementally derive static and dynamic properties as the user modifies and debugs th e program.Keywords
This publication has 24 references indexed in Scilit:
- A Conceptual Analysis of the Draco Approach to Constructing Software SystemsIEEE Transactions on Software Engineering, 1987
- Gandalf: Software development environmentsIEEE Transactions on Software Engineering, 1986
- Generating editing environments based on relations and attributesACM Transactions on Programming Languages and Systems, 1986
- The PSG system: from formal language definitions to interactive programming environmentsACM Transactions on Programming Languages and Systems, 1986
- A 15 Year Perspective on Automatic ProgrammingIEEE Transactions on Software Engineering, 1985
- Generating a Production compiler from an Attribute GrammarIEEE Software, 1984
- Executable specification of static semanticsPublished by Springer Nature ,1984
- Software specification using graph grammarsComputing, 1983
- Augmenting Parsers to Support IncrementalityJournal of the ACM, 1980
- The intrinsically exponential complexity of the circularity problem for attribute grammarsCommunications of the ACM, 1975