Abstract
We show how incremental attribute change propagation can be efficiently done on Graph Grammars. The order of evaluation is controlled by priority numbers assigned to each attribute vertex. The priority numbers are assigned in linear time as directed by static grammar analysis. We also develop a powerful set-theoretic based embedding description format, and introduce the idea of roles as a mechanism to aid in graph grammar engineering. Roles are also a powerful aid to static analysis of grammar properties. A key to our approach is the uniformity gained by collapsing the substrate (structure) graph and the attribute dependency graph into a single directed graph structure. Related groups of attributes are simultaneously replaced by cluster rewrites.
Supported in part by the National Science Foundation under grant CCR-8809479 and by the AT&T Illinois Software Engineering Project. For more information contact Simon M. Kaplan, Department of Computer Science, University of Illinois, Urbana, Illinois 61801, USA. eamil: kaplan@a.cs.uins.edu or unnet!uiucdcs!kaplan.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
B. Alpern, A. Carle, B. Rosen, P. Sweeney, and K. Zadeck. Incremental Evaluation of Attributed Graphs. Technical Report CS-87-29, Department of Computer Science, Brown University, December 1987.
Veronique Dozeau-Gouge, Gilles Kahn, Bernard Lang, and Bertrand Melese. Documents structure and modularity in mentor. In Proceedings of the ACM SIGPLAN/SIGSOFT Symposium on Practical Software Development Environments, pages 141–148, Pittsburgh, Pa, May 1984.
Gregor Engels and Wilhelm Schafer. Graph grammar engineering: a method used for the development of an integrated programming environment. In Hartmut Ehrig, Christiane Floyd, Maurice Nivat, and James Thatcher, editors, Proceedings of the International Joint Conference on Theory and Practice of Software Development (TAPSOFT), LNCS 186, pages 179–193, Springer-Verlag, 1985.
Herbert Gottler. Attributed graph grammars for graphics. In Hartmut Ehrig, Manfred Nagl, and Grzegorz Rozenberg, editors, Proceedings of the second International Workshop on Graph Grammars and their Application to Computer Science, LNCS 153, pages 130–142, Springer-Verlag, 1982.
Herbert Gottler. Graph grammars and diagram editing. In G. Rozenberg H. Ehrig, M. Nagl and A. Rosenfeld, editors, Proceedings of the Third International Workshop on Graph Grammars and their Application to Computer Science, LNCS 291, pages 216–231, Springer-Verlag, Heidelberg, 1987.
D. Janssens and G. Rozenberg. Graph grammars with neighbourhood-controlled embeddings. Theoretical Computer Science, 21:55–74, 1982.
Simon M. Kaplan. Incremental Attribute Evaluation on Graphs (Revised Version). Technical Report UIUC-DCS-86-1309, University of Illinois at Urbana-Champaign, December 1986.
Simon M. Kaplan and Roy H. Campbell. Designing and prototyping in grads. In Proceedings of the Second IEE/BCS Conference on Software Engineering, Conference Publication 290, pages 55–59, IEE, Liverpool, July 1988.
Simon M. Kaplan, Steven K. Goering, and Roy H. Campbell. Supporting the software development process with attributed nlc graph grammars. In G. Rozenberg H. Ehrig, M. Nagl and A. Rosenfeld, editors, Proceedings of the Third International Workshop on Graph Grammars and their Application to Computer Science, LNCS 291, pages 309–325, Springer-Verlag, Heidelberg, 1987.
Uwe Kastens. Ordered attribute grammars. Acta Informatica, 13(3):229–256, 1980.
Donald E. Knuth. Semantics of context-free languages. Mathematical Systems Theory, 2(2):127–145, June 1968.
Manfred Nagl. A software development environment based on graph technology. In G. Rozenberg H. Ehrig, M. Nagl and A. Rosenfeld, editors, Proceedings of the Third International Workshop on Graph Grammars and their Application to Computer Science, LNCS 291, pages 458–478, Springer-Verlag, Heidelberg, 1987.
David Notkin. The gandalf project. Journal of Systems and Software, 5(2):91–106, May 1985.
Thomas Reps. Generating Language-Based Environments. MIT Press, 1984.
Thomas Reps and Tim Teitelbaum. The synthesizer generator. In Proceedings of the SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, Pittsburgh, PA, April 1984.
William M. Waite and Gerhard Goos. Compiler Construction. Springer-Verlag, New York, 1984.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1989 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kaplan, S.M., Goering, S.K. (1989). Priority controlled incremental attribute evaluation in attributed graph grammars. In: DÃaz, J., Orejas, F. (eds) TAPSOFT '89. CAAP 1989. Lecture Notes in Computer Science, vol 351. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-50939-9_140
Download citation
DOI: https://doi.org/10.1007/3-540-50939-9_140
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-50939-4
Online ISBN: 978-3-540-46116-6
eBook Packages: Springer Book Archive