Skip to main content

Aspect Weaving with Graph Rewriting

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1799))

Abstract

This paper introduces GRS-based AOP which explains a large subclass of AOP weavers as graph rewrite systems (GRS). The corresponding class of AOP problems has a formal background since it inherits all features of graph rewrite systems such as criteria for termination, confluence, and unique normal forms. In particular, it it shown that different kinds of rewrite rules form different weaver classes. At least two of them (EARS and XGRS weavers) have simple semantics since they always yield unique weaving results.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Uwe Aßmann. On Edge Addition Rewrite Systems and Their Relevance to Program Analysis. In J. Cuny, H. Ehrig, G. Engels, and G. Rozenberg, editors, 5th Int. Workshop on Graph Grammars and Their Application To Computer Science, Williamsburg, volume 1073 of Lecture Notes in Computer Science, pages 321–335, Heidelberg, November 1994. Springer.

    Chapter  Google Scholar 

  2. Uwe Aßmann. Graph Rewrite Systems For Program Optimization. Technical Report RR-2955, INRIA Rocquencourt, 1996.

    Google Scholar 

  3. Uwe Aßmann. How To Uniformly Specify Program Analysis and Transformation. In P. A. Fritzson, editor, Compiler Construction (CC), volume 1060 of Lecture Notes in Computer Science, pages 121–135, Heidelberg, 1996. Springer.

    Google Scholar 

  4. Uwe Aßmann. AOP with design patterns as meta-programming operators. Technical Report 28, Universität Karlsruhe, October 1997.

    Google Scholar 

  5. Uwe Aßmann. OPTIMIX, A Tool for Rewriting and Optimizing Programs. In Graph Grammar Handbook, Vol. II. Chapman-Hall, 1999.

    Google Scholar 

  6. [AWB+94]_Mehmet Aksit, Ken Wakita, Jan Bosch, Lodewijk Bergmans, and Akinori Yonezawa. Abstracting object interactions using composition filters. In O. Nierstrasz, R. Guerraoui, and M. Riveill, editors, Proceedings of the ECOOP’93 Workshop on Object-Based Distributed Programming, LNCS 791, pages 152–184. Springer-Verlag, 1994.

    Chapter  Google Scholar 

  7. Dorothea Blostein, Hoda Fahmy, and Ann Grbavec. Practical Use of Graph Rewriting. Technical Report Queens University, Kingston, Ontario, November 1994.

    Google Scholar 

  8. Krzysytof Czarnecki. Generative Programming: Principles and Techniques of Software Engineering Based on Automated Configuration and Fragment-Based Component Models. PhD thesis, Technical University of Ilmenau, October 1998.

    Google Scholar 

  9. H. Ehrig, M. Korff, and M. Löwe. Tutorial introduction to the algebraic approach of graph grammars based on double and single pushouts. In H. Ehrig, H.-J. Kreowski, and G. Rozenberg, editors, 4th International Workshop On Graph Grammars and Their Application to Computer Science, volume 532 of Lecture Notes in Computer Science, pages 24–37, Heidelberg, March 1990. Springer.

    Chapter  Google Scholar 

  10. Pascal Fradet and Mario Südholt. AOP: Towards a Generic Framework Using Program Transformation and Analysis. In Workshop on Aspect-oriented Programming, ECOOP, July 1998.

    Google Scholar 

  11. [KLM+97]_Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Cristina Lopez, Jean-Marc Loingtier, and John Irwin. Aspect-oriented programming. In ECOOP 97, volume 1241 of Lecture Notes in Computer Science, pages 220–242. Springer-Verlag, 1997.

    Chapter  Google Scholar 

  12. Karl J. Lieberherr. Adaptative Object-Oriented Software: The Demeter Method. PWS Publishing, 1996.

    Google Scholar 

  13. Christina Videira Lopes. D: A Language Framework for Distributed Programming. PhD thesis, College of Computer Science, Northeastern University, November 1997.

    Google Scholar 

  14. Anurag Mendhekar, Gregor Kiczales, and John Lamping. RG: A Case-Study for Aspect-Oriented Programming. Technical report, Xerox Palo Alto Research Center, 1997.

    Google Scholar 

  15. Jean-Claude Raoult and Frédéric Voisin. Set-theoretic graph rewriting. In Hans Jürgen Schneider and Hartmut Ehrig, editors, Graph Transformations in Computer Science, volume 776 of Lecture Notes in Computer Science, pages 312–325, 1994.

    Google Scholar 

  16. Andreas Schürr, Andreas J. Winter, and Albert Zürndorf. Graph Grammar Engineering with PROGRES. In European Software Engineering Conference ESEC 5, volume 989 of Lecture Notes in Computer Science, pages 219–234, Heidelberg, September 1995. Springer.

    Google Scholar 

  17. Walter Zimmer. Frameworks und Entwurfsmuster. PhD thesis, Universität Karlsruhe, February 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Aßmann, U., Ludwig, A. (2000). Aspect Weaving with Graph Rewriting. In: Czarnecki, K., Eisenecker, U.W. (eds) Generative and Component-Based Software Engineering. GCSE 1999. Lecture Notes in Computer Science, vol 1799. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-40048-6_3

Download citation

  • DOI: https://doi.org/10.1007/3-540-40048-6_3

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41172-7

  • Online ISBN: 978-3-540-40048-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics