Object-Orientation in Attribute Grammars

Object-orientation is a language design and programming paradigm aiming at better structuring, reusing, and maintaining properties of software. This paradigm has been successfully combined with conventional programming languages, as well as with functional and logic programming languages; it seems obvious that object-orientation has come to stay. Recently, some suggestions to extend the attribute grammar formalism with features supporting object-orientation have been proposed. These proposals are reviewed, and the approach taken in the TOOLS system is described and motivated. It is demonstrated that object-orientation contributes to the uniformity and applicability of attribute grammar descriptions.

[1]  Kai Koskimies Techniques for Modular language implementation , 1990, Acta Cybern..

[2]  Henry Lieberman Reversible Object-Oriented Interpreters , 1987, ECOOP.

[3]  Ole Lehrmann Madsen,et al.  An object-oriented metaprogramming system , 1988 .

[4]  Minoru Tanaka,et al.  A System for Generating Language-Oriented Editors , 1988, IEEE Trans. Software Eng..

[5]  Görel Hedin,et al.  An Object-Oriented Notation for Attribute Grammars , 1989, European Conference on Object-Oriented Programming.

[6]  Kai Koskimies,et al.  Software Engineering Aspects in Language Implementation , 1988, CC.

[7]  Kai Koskimies,et al.  The design of a language processor generator , 1988, Softw. Pract. Exp..

[8]  Reino Kurki-Suonio Towards better structured definitions of programming languages. , 1975 .

[9]  Peter Wegner Dimensions of object-based language design , 1987, OOPSLA 1987.

[10]  David A. Watt,et al.  Modular Description of Programming Languages , 1991, Computer/law journal.

[11]  Boudewijn R. Haverkort,et al.  Compiler generation based on grammar inheritance , 1990 .

[12]  Thomas W. Reps Optimal-time incremental semantic analysis for syntax-directed editors , 1982, POPL '82.

[13]  Marie-Luise Christ-Neumann,et al.  ASDL - An Object-Oriented Specification Language for Syntax-Directed Environments , 1987, ESEC.

[14]  Gordon V. Cormack,et al.  Modular Attribute Grammars , 1990, Comput. J..

[15]  Yoichi Shinoda,et al.  Object-Oriented Extension of Attribute Grammars and its Implementation Using Distributed Attribute Evaluation Algorithm , 1990, WAGA.

[16]  Grady Booch,et al.  Object-Oriented Design with Applications , 1990 .

[17]  J. Grosch,et al.  A Tool Box for Compiler Construction , 1990, CC.

[18]  Peter Wegner,et al.  Concepts and paradigms of object-oriented programming , 1990, OOPS.

[19]  Robert D. Cameron,et al.  Grammar-Based Definition of Metaprogramming Systems , 1984, TOPL.