Abstract
Attribute grammars, as originally introduced by D.E.Knuth, have been exploited in conjunction with automated compiler generation from its description and other programming language related tools which are written using static semantics. Although it is well recognized through these applications that attribute grammars is useful in manipulation of large and complex data structures generally appear in today's computer systems, it is prevented from being used in such applications because of its weakness in describing dynamic semantics often required for them. This paper introduces an extension of attribute grammars based on the object-oriented programming paradigm, which supports describing the dynamic behavior of the system of persistent objects, including modifications of attribute values and tree structures, while preserving the advantages of standard attribute grammars.
We also introduce a distributed attribute evaluation algorithm based on message passing among objects. This algorithm is a natural way of implementing a large system of objects based in our model. The algorithm is asymptotically time optimal, and also has important properties which are required for application of the model to systems such as software databases, where attribute evaluation involves human interaction.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
D.E. Knuth. Semantics of context-free languages. Mathematical Systems Theory, 2(2):127–145, 1968.
R. Fallow. Generating a Production Compiler from an Attribute Grammar. IEEE Software, 1(4), 1984.
T. W. Reps and T. Teitelbaum. Generating Language Based Environments. MIT Press, 1984.
T. Katayama. HFP, A Hierarchical and Functional Programming. In Proceedings of the 5th International Conference on Software Engineering, pages 343–353, 1981.
Y. Shinoda and T. Katayama. Attribute Grammar Based Programming and its Environment. In Proceedings of the 21st Hawaii International Conference on System Sciences, Software Track, 1988.
K. Kishida, T. Katayama, M. Matsuo, I. Miyamoto, K. Ochimizu, N. Saito, J.H. Sayler, K. Torii, and L.G. Williams. SDA: a noval approach to software environment design and construction. In Proceedings of the 10th International Conference on Software Engineering, pages 69–79, 1988.
T. Katayama. Hierarchical and functional software process description. In Proceedings of the Fourth International Software Process Workshop, 1988.
Daniel M. Yellin. Attribute Grammar Inversion and Source-to-source translation. Lecture Notes in Computer Science, Springer-Verlag, 1988.
T. W. Reps and T. Teitelbaum. The Synthesizer Generator. Texts and Monographs in Computer Science, Springer-Verlag, 1989.
G.E. Kaiser. Generation of run-time environments. In Proceedings of SIGPLAN '86 Symposium on Compiler Construction, pages 51–57, 1986.
P. M. Lewis, D. J. Rosenkranz, and R. E. Stearns. Attribute translations. Journal of Computer Systems and Sciences, 9(3):279–307, December 1974.
T. Katayama. Translation of Attribute Grammars into Procedures. ACM Transaction of Programming Languages and Systems, 6(2):345–369, 1984.
S. M. Kaplan and G. E. Kaiser. Incremental attribute evaluation in distributed language-based environments. In Proceedings of the 5th Symposium on Principles of Distributed Computing, pages 121–130, 1986.
I. Fang. FOLDS, a Declarative Formal Language Definition System. PhD thesis, STAN-CS-72-329, CSD, Stanford University, 1972.
T. W. Reps. Optimal-time incremental semantic analysis for syntax-directed editors. In Conference Record of the 9th ACM Symposium on Principles of Programming Languages, pages 169–176, January 1982.
D. Betz. XLISP: An Experimental Object Oriented Language. January 1985.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Shinoda, Y., Katayama, T. (1990). Object oriented extension of attribute grammars and its implementation using distributed attribute evaluation algorithm. In: Deransart, P., Jourdan, M. (eds) Attribute Grammars and their Applications. Lecture Notes in Computer Science, vol 461. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53101-7_13
Download citation
DOI: https://doi.org/10.1007/3-540-53101-7_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53101-2
Online ISBN: 978-3-540-46666-6
eBook Packages: Springer Book Archive