Context-sensitive editing with PSG environments

  • Rolf Bahlke
  • Gregor Snelting
Part of the Lecture Notes in Computer Science book series (LNCS, volume 244)


The PSG-Programming System Generator developed at Darmstadt produces interactive language-specific programming environments from formal language definitions. From an entirely nonprocedural specification of the language's syntax, context conditions and denotational semantics, it produces a hybrid editor, an interpreter and a library system. In this paper, we give a detailed description of PSG-generated environments. The main features of PSG editors are discussed. In particular, we describe the interplay between text editing and structure editing, the PSG fragment concept, the interactive handling of syntax and context errors and the context-sensitive error prevention mechanisms. We include an example editing session demonstrating the user interface of the PSG implementation on PERQ workstations, utilizing graphical devices.


Denotational Semantic Library System Menu Item Semantic Error Current Selection 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

6. References

  1. /BaSn85a/.
    Bahlke, R. and Snelting, G.: The PSG-Programming System Generator. Proc. ACM Symposium on Language Issues in Programming Environments, ACM SIGPLAN Notices 20, 7, pp.28–33, July 1985.Google Scholar
  2. /BaSn85b/.
    Bahlke, R. and Snelting, G. The PSG System: From formal language definitions to interactive programming environments. Report PU2R4/85, Fachbereich Informatik, Technische Hochschule Darmstadt. Accepted for publication in ACM TOPLAS (October 1986).Google Scholar
  3. /Ka83/.
    Kahn, G., Lang, B., Mélèse, B. and Morcos, E.: METAL: A formalism to specify formalisms. Science of Computer Programming 3, pp. 151–188, 1983.Google Scholar
  4. /No85/.
    Notkin, D.: The Gandalf Project. The Journal of Systems and Software, 5, 2, May 1985.Google Scholar
  5. /PSG85/.
    Bahlke, R., Hunkel, M., Klug, M. and Snelting, G.: Language definer's guide to PSG. Part one: Syntax and Static Semantics. Report PU2R3/85, Fachbereich Informatik, Technische Hochschule Darmstadt.Google Scholar
  6. /SnHe86/.
    Snelting, G. and Henhapl, W.: Unification in many-sorted algebras as a device for incremental semantic analysis. Proc. 13th ACM Symposium on Principles of Programming Languages, St. Petersburg, pp.229–235, Jan. 1986.Google Scholar
  7. /ReTe84/.
    Reps, T. and Teitelbaum, T.: The Synthesizer Generator. Proc. ACM Sigsoft/Sigplan Symposium on Practical Software Development Environments. ACM Sigplan Notices 19, 5, pp. 42–48, May 1984.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1987

Authors and Affiliations

  • Rolf Bahlke
    • 1
  • Gregor Snelting
    • 1
  1. 1.Institut für SystemarchitekturFachbereich Informatik Technische Hochschule DarmstadtDarmstadtWest Germany

Personalised recommendations