The theory of joins in relational databases
ACM Transactions on Database Systems (TODS)
A Machine-Oriented Logic Based on the Resolution Principle
Journal of the ACM (JACM)
Incremental Context-Dependent Analysis for Language-Based Editors
ACM Transactions on Programming Languages and Systems (TOPLAS)
Non-syntactic attribute flow in language based editors
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Context Relations - a Concept for Incremental Context Analysis in Program Fragments
Programmiersprachen und Programmentwicklung, 8. Fachtagung, veranstaltet vom Fachausschuß 2.1 der GI und der Schweizer Informatiker Gesellschaft
Proceedings of the 7th International Conference on Automated Deduction
The PSG - Programming System Generator
SLIPE '85 Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments
The PSG system: from formal language definitions to interactive programming environments
ACM Transactions on Programming Languages and Systems (TOPLAS)
Dost: an environment to support automatic generation of user interfaces
SDE 2 Proceedings of the second ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
A categorized bibliography on incremental computation
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An approach to support automatic generation of user interfaces
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Software Engineering and Methodology (TOSEM)
Natural semantics as a static program analysis framework
ACM Transactions on Programming Languages and Systems (TOPLAS)
A knowledge representation scheme for DFT
ITC'88 Proceedings of the 1988 international conference on Test: new frontiers in testing
Hi-index | 0.01 |
Language-specific editors for typed programming languages must contain a subsystem for semantic analysis in order to guarantee correctness of programs with respect to the context conditions of the language. As programs are usually incomplete during development, the semantic analysis must be able to cope with missing context information, e. g. incomplete variable declarations or calls to procedures imported from still missing modules. In this paper we present an algorithm for incremental semantic analysis, which guarantees immediate detection of semantic errors even in arbitrary incomplete program fragments. The algorithm is generated from the language's context conditions, which are described by inference rules. During editing, these rules are evaluated using a unification algorithm for many-sorted algebras with semi-lattice ordered subsorts and non-empty equational theories. The method has been implemented as part of the PSG system, which generates interactive programming environments from formal language definitions, and has been successfully used to generate an incremental semantic analysis for PASCAL and MODULA-2.