ASDL — An object-oriented specification language for syntax-directed environments

  • M.-L. Christ-Neumann
  • H.-W. Schmidt
III — The Internals Of Environments: The Bones
Part of the Lecture Notes in Computer Science book series (LNCS, volume 289)


ASDL is a formalism to specify syntax-directed programming environments. The language is the heart of a language-independent kernel system, which is based on an environment database and offers a uniform user interface. ASDL is designed to ease the extension of the kernel system by new languages and by new language dependent tools. It unifies concepts of syntax-directed translation and object-oriented programming. This is achieved by identifying syntactic categories with types and translation rules with generic operations on such types. Each type is associated with translation rules, attributes, and relations, which are shared by all instances of the type. Translation rules are recursively defined in terms of other rules and semantic actions. Semantic actions are non-generic imported operations that are defined in a host language. A translation scheme is viewed as an operation that maps its rules over an abstract syntax tree. Translation schemes allow the designer to define traversal strategies, to clip and prune syntax trees and to modify attributes and relations solely in terms of their conceptual representation. An initial prototype of the kernel system was implemented on Lisp machines.


attribute extensibility inheritance object-oriented programming environment relation semantic action syntax-directed environment translation scheme 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    A.V. Aho, J.D. Ullman: The Theory of Parsing, Translation, and Compiling, I+II, Prentice-Hall, Englewood Cliffs, N.J., 1972Google Scholar
  2. [2]
    D.G. Bobrow et al.: CommonLoops: Merging Lisp and Object-Oriented Programming. in: SIGPLAN Notices Special Issue: ACM Proc. of OOPSLA 86 Conf., 21(11): 17–29, 1986Google Scholar
  3. [3]
    M.L. Christ-Neumann et al.: ASDL — A Specification Language for Syntax-Directed Environments, GRASPIN Technical Paper, GMD 16/5, Sankt Augustin, 1986Google Scholar
  4. [4]
    L. Cardelli: A Semantics of Multiple Inheritance. in: Kahn G. and MacQueen D.B. and Plotkin G. (ed.): Semantics of Data Types, LNCS 173, Springer-Verlag, Berlin, Heidelberg, New York, 51–67, 1984Google Scholar
  5. [5]
    G. Curry et al.: Traits: An Approach to multiple-inheritance subclassing. in: Limb (Ed.): ACM Proc. of SIGOA Conf. on office automation systems, 1–9, 1982Google Scholar
  6. [6]
    V. Donzeau-Gouge et al.: Programming environment based on structured editors: The Mentor experience, INRIA Research Report 26, 1980Google Scholar
  7. [7]
    Epsilon: SEEK — A Software Engineering Kernel: Reference Manual, Epsilon, Berlin, 1984Google Scholar
  8. [8]
    G. Kahn et al.: Metal: A Formalism to Specify Formalisms, Science of Computer Programming 3, 151–188, 1983Google Scholar
  9. [9]
    U. Kastens: Ordered attribute grammars. Acta Informatica, 13(3), 229–256, 1980.Google Scholar
  10. [10]
    D. Knuth: Semantics of context-free languages. Mathematical Systems Theory, 2(2), 127–145, 1968.Google Scholar
  11. [11]
    R. Medina-Mora, P. Feiler: An incremental programming environment. IEEE Trans. Softw. Eng. SE-7, 5, 472–482, 1981Google Scholar
  12. [12]
    D.A. Moon: Object-oriented programming with FLAVORS. in: SIGPLAN Notices Special Issue: ACM Proc. of OOPSLA 86 Conf., 21(11), 1–8, 1986Google Scholar
  13. [13]
    M.P. Papazoglou, C. Hoffmann: Towards versatile object oriented query languages. To appear: Proc. 1987 IEEE Workshop on Languages for Automation.Google Scholar
  14. [14]
    T. Reps, T. Teitelbaum: The Synthesizer Generator: Reference Manual, Department of Computer Science, Cornell University, Ithaca, NY 14853, 1985Google Scholar
  15. [15]
    C. Zaniolo et al.: Object oriented database systems and knowledge systems, in: L. Kerschberg (Ed.): Expert database systems, Benjamin/Cummings Publ. Co., 1986Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1987

Authors and Affiliations

  • M.-L. Christ-Neumann
    • 1
  • H.-W. Schmidt
    • 1
  1. 1.GMD-F2G2Sankt Augustin 1

Personalised recommendations