Abstract
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.
Preview
Unable to display preview. Download preview PDF.
References
Aksit M., Mostert R., Haverkort B.: Compiler Generation Based on Grammar Inheritance. Memoranda Informatica 90–07, Department of Computer Science, University of Twente, Feb 1990.
Booch G.: Object-Oriented Design with Applications. Benjamin Cummings 1991.
Cameron R.D., Ito M.R.: Grammar-Based Definition of Metaprogramming Systems. ACM TOPLAS 6,1 (January 84), 20–54.
Christ-Neumann M.-L., Schmidt H.-W.: ASDL — An Object-Oriented Specification Language for Syntax-Directed Environments. In: Proc. of ESEC '87, LNCS 289, Springer-Verlag 1987, 71–79.
Dahl O.-J., Myhrhaug B., Nygaard K.: Simula 67 Common Base Language. N.S.-22, Norwegian Computing Center, Oslo 1970.
Dueck G.P.D., Cormack G.V.: Modular Attribute Grammars. The Computer Journal 33,2 (1990), 164–172.
Grosch J.: Ag — An Attribute Evaluator Generator. Report 16, Project Compiler Generation, GMD Forschungsstelle Karlsruhe, 1989.
Grosch J.: Object-Oriented Attribute Grammars. In: Proc. 5th International Symposium on Computer and Information Sciences (ISCIS V), A.E. Harmanci, E. Gelenbe (eds.), Cappadocia, Nevsehir, Turkey, 1990, 807–816.
Grosch J., Emmelmann H.: A Tool Box for Compiler Construction. In: Proc. of Workshop on Compiler-Compilers, Schwerin 1990, LNCS 477, Springer-Verlag 1991, 106–116.
Hedin G.: An Object-Oriented Notation for Attribute Grammars. In: Proc. of the European Conference on Object-Oriented Programming (ECOOP '89), Nottingham, 1989. The British Computer Society Workshop Series, Cambridge University Press 1989, 329–345.
Knuth D.E.: Semantics of Context-Free Languages. Math. Syst. Theory 2,2 (1968), 127–145.
Koskimies K., Nurmi O., Paakki J., Sippu S.: The Design of a Language Processor Generator. Software Practice & Experience 18,2 (1988), 107–135.
Koskimies K., Mäkinen E.: On a Grammar Transformation Related to Class Hierarchies. Report A-1991-2, Department of Computer Science, University of Tampere, May 1991.
Koskimies K.: Software Engineering Aspects in Language Implementation. In: Proc. of Workshop on Compiler Compilers and High Speed Compilation, D. Hammer (ed.), LNCS 371, Springer-Verlag 1988, 39–51.
Koskimies K.: Techniques for Modular Language Implementation. Report A-1989-5, Department of Computer Science, University of Tampere, 1989.
Koskimies K., Paakki J.: TOOLS: A Unifying Approach to Object-Oriented Language Implementation. In: Proc. of ACM Sigplan '87 Conference on Interpreters and Interpretive Techniques. Sigplan Notices 22,7 (1987), 153–164.
Koskimies K., Paakki J.: Automating Language Implementation — A Pragmatic Approach. Ellis Horwood Books in Information Technology, Chichester, England, 1990.
Kurki-Suonio R.: Towards Better Structured Definitions of Programming Languages. Report STAN-CS-75-500, Computer Science Department, Stanford University, 1975.
Lehrmann Madsen O., Nørgaard C.: An Object-Oriented Metaprogramming System. In: Proc. 21st Annual Hawaii International Conference on System Sciences (B.D. Shriver ed.), 1988, 406–415.
Lieberman H.: Reversible Object-Oriented Interpreters. In: Proc. of the European Conference on Object-Oriented Programming (ECOOP'87), 1987, 11–19.
Magnusson B., Bengtsson M., Dahlin L.-O., Fries G., Gustavsson A., Hedin G., Minör S., Oscarsson D., Taube M.: An Overview of the Mjølner/Orm Environment: Incremental Language and Software Development. Report LU-CS-TR:90:57, Department of Computer Science, Lund University, 1990. Also in Proc. TOOLS '90, Paris 1990.
Reps T.W.: Optimal-time Incremental Semantic Analysis for Syntax-Directed Editors. In: Conf. Record of the 9th ACM Symposium on Principles of Programming Languages, 169–176, 1982.
Shinoda Y., Katayama T.: Object-Oriented Extension of Attribute Grammars and its Implementation. In: Workshop on Attribute Grammars and Their Applications, P. Deransart, M. Jourdan (eds.), Paris, LNCS 461, Springer-Verlag, 177–191.
Tenma T., Tsubotani H., Tanaka M., Ichikawa T.: A System for Generating Language-Oriented Editors. IEEE Trans. on Software Engineering 14,8 (August 1988), 1098–1109.
Uhl J.: Spezifikation von Programmiersprachen und Übersetzern. GMD-Bericht Nr. 161, Gesellschaft für Mathematik und Datenverarbeitung, 1986.
Watt D.A.: Modular Description of Programming Languages. Report A-81 734, Computer Science Division — EECS, University of California, Berkeley 1985.
Wegner P.: Dimensions of Object-Oriented Languages. In: Proc. of ACM '87 Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA '87), Orlando, Florida 1987. ACM Sigplan Notices 22,12 (1987), 168–182.
Wegner P.: Concepts and Paradigms of Object-Oriented Programming. OOPS Messenger 1,1 (August 1990), 7–87.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Koskimies, K. (1991). Object-orientation in attribute grammars. In: Alblas, H., Melichar, B. (eds) Attribute Grammars, Applications and Systems. SAGA School 1991. Lecture Notes in Computer Science, vol 545. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-54572-7_11
Download citation
DOI: https://doi.org/10.1007/3-540-54572-7_11
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-54572-9
Online ISBN: 978-3-540-38490-8
eBook Packages: Springer Book Archive