|
ABSTRACT
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.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
/Aust83/ Austermühl, B.: Ein relationaler Ansatz zur Beschreibung der statischen Semantik von Programmiersprachen. PhD thesis, Technische Hochschule Darmstadt 1983
|
 |
3
|
|
 |
4
|
|
| |
5
|
/Hab82/ Habermann, N. et al: The second compendium of Gandalf documentation. Dept. of Computer science, Carnegie Mellon University 1982
|
| |
6
|
|
| |
7
|
/HuSc83/ Hunkel, M., Schmitt, H.: Ein System zur Bezeichneridentifikation und dessen Integration in ein strukturorientiertes Ediersystem. Diploma thesis, Technische Hochschule Darmstadt 1983.
|
| |
8
|
/Miln78/ Milner, R.: A theory of type polymorphism in programming. J. Computer and system sciences 17 (1978), pp. 348--375
|
| |
9
|
/PSG85/ Bahlke, R., Hunkel,M., Klung, M., Snelting, G.: Language definers guide to PSG. Report PU2R3/85, Technische Hochschule Darmstadt, 1985.
|
| |
10
|
/Plo72/ Plotkin, G.: Building in equational theories. Machine intelligence 7 (1972), pp. 73--90
|
 |
11
|
|
 |
12
|
|
| |
13
|
|
| |
14
|
/Snel85/ Snelting, G.: Inkrementelle semantische Analyse in unvollstandigen Programmfragmenten mit Kontextrelationen. PhD thesis. Technische Hochschule Darmstadt 1985.
|
|