[bahlke86toplas] | R. Bahlke, Gregor Snelting, The PSG System: From Formal Language Definitions to Interactive Programming
Environments, ACM Transactions on Programming Languages and Systems, Vol. 8, (4), pp. 547--576, 1986.
|
Abstract
The PSG programming system generator developed at the Technical University
of Darmstadt produces interactive, language-specific programming
environments from formal language definitions. All language-dependent
parts of the environment are generated from an entirely nonprocedural
specification of the language's syntax, context conditions, and dynamic
semantics. The generated environment consists of a language-based
editor, supporting systematic program development by named program
fragments, an interpreter, and a fragment library system. The major
component of the environment is a full-screen editor, which allows
both structure and text editing. In structure mode the editor guarantees
prevention of both syntactic and semantic errors, whereas in textual
mode it guarantees their immediate recognition. PSG editors employ
a novel algorithm for incremental semantic analysis which is based
on unification. The algorithm will immediately detect semantic errors
even in incomplete program fragments. The dynamic semantics of the
language are defined in denotational style using a functional language
based on the lambda calculus. Program fragments are compiled to terms
of the functional language which are executed by an interpreter.
The PSG generator has been used to produce environments for Pascal,
ALGOL 60, MODULA-2, and the formal language definition language itself.
Download
BibTeX
Authors at the institute