Skip to main content

Derivations in Object-Oriented Graph Grammars

  • Conference paper

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

Abstract

This work aims to extend the algebraic single-pushout approach to graph transformation to model object-oriented systems structures and computations. Graphs whose sets of nodes and edges are partially ordered are used to model the class hierarchy of an object-oriented system, making the inheritance and overriding relations explicit. Graphs typed over such structures are then used to model systems of objects, whose behaviour is given by an object-oriented graph grammar. It will be shown how the derivations which arise from those grammars are compatible with the way object-oriented programs are defined and executed.

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. Andries, M., Engels, G., Habel, A., Hoffmann, B., Kreowski, H.-J., Kuske, S., Plump, D., Schurr, A., Taentzer, G.: Graph transformation for specification and programming. Science of Computer Programming 34, 1–54 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  2. Blostein, D., Fahmy, H., Grbavec, A.: Practical use of graph rewriting. Tech. Rep. 95-373, Queen’s University, Kingston, Ontario, Canada (1995)

    Google Scholar 

  3. Brandenburg, F.J.: On partially ordered graph grammars. In: Ehrig, H., Nagl, M., Rosenfeld, A., Rozenberg, G. (eds.) Graph Grammars 1986. LNCS, vol. 291, pp. 99–111. Springer, Heidelberg (1987)

    Google Scholar 

  4. Cardelli, L., Wegner, P.: On understanding types, data abstraction and polymorphism. ACM Computing Surveys 17 4, 471–522 (1985)

    Article  Google Scholar 

  5. Cook, W.R.: Object-oriented programming versus abstract data type. In: de Bakker, J.W., Rozenberg, G., de Roever, W.-P. (eds.) REX 1990. LNCS, vol. 489, pp. 151–178. Springer, Heidelberg (1991)

    Chapter  Google Scholar 

  6. Cook, W.R., Hill, W.L., Canning, P.S.: Inheritance is not subtyping. In: POPL 1990 - 17th Annual ACM Symposium on Principles of Programming Languages, January 1990, Kluwer Academic Publishers, Dordrecht (1990)

    Google Scholar 

  7. Corradini, A., Ehrig, H., Löwe, M., Montanari, U., Padberg, J.: The category of typed graph grammars and its adjunctions with categories of derivations. In: [11], pp. 56–74 (1994)

    Google Scholar 

  8. Corradini, A., Montanari, U., Rossi, F.: Graph processes. Fundamentae Informatica 26 3-4, 241–265 (1996)

    MathSciNet  Google Scholar 

  9. Davey, B.A., Priestley, H.A.: Introduction to Lattices and Order, 2nd edn., p. 298. Cambridge University Press, Cambridge (2002)

    MATH  Google Scholar 

  10. Dotti, F.L., Ribeiro, L.: Specification of mobile code using graph grammars. In: Formal Methods for Open Object-Based Distributed Systems IV, pp. 45–64. Kluwer Academic Publishers, Dordrecht (2000)

    Google Scholar 

  11. In: Cuny, J., Engels, G., Ehrig, H., Rozenberg, G. (eds.) Graph Grammars 1994. LNCS, vol. 1073, Springer, Heidelberg (1996)

    Google Scholar 

  12. Ehrig, H., Heckel, R., Korff, M., Löwe, M., Ribeiro, L., Wagner, A., Corradini, A.: Algebraic approaches to graph transformation. Part II: singlepushout approach and comparison with double pushout approach. In: [13]. ch. 4, pp. 247–312

    Google Scholar 

  13. Ehrig, H., Kreowski, H.-J., Montanari, U., Rozemberg, G.: Handbook of Graph Grammars and Computing by Graph Transformation. Foundations, vol. 1. World Scientific, Singapore (1996)

    Google Scholar 

  14. Ehrig, H., Kreowski, H.-J., Montanari, U., Rozemberg, G.: Handbook of Graph Grammars and Computing by Graph Transformation. Concurrency, Parallelism, and Distribution, vol. 3. World Scientific, Singapore (1999)

    Google Scholar 

  15. Ehrig, H., Löwe, M.: Parallel and distributed derivations in the singlepushout approach. Theoretical Computer Science 109, 123–143 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  16. Ferreira, A.P.L., Ribeiro, L.: Towards object-oriented graphs and grammars. In: Najm, E., Nestmann, U., Stevens, P. (eds.) FMOODS 2003. LNCS, vol. 2884, pp. 16–31. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  17. Ferreira, A.P.L., Ribeiro, L.: A graph-based semantics for object-oriented programming constructs. In: Proceedings of the International Conference on Category Theory and Computer Science (CTCS 2004), Copenhagen, DK, August 12-14, p. 15 (2004); to appear as a special issue of Eletronic Notes in Theoretical Computer Science

    Google Scholar 

  18. Korff, M.: Generalized Graph Structure Grammars with Applications to Concurrent Object-Oriented Systems. PhD Thesis, Technische Universität Berlin, Berlin (1995)

    Google Scholar 

  19. Löwe, M.: Extended Algebraic Graph Transformation. PhD thesis, Technischen Universität Berlin, Berlin (February 1991)

    Google Scholar 

  20. Montanari, U., Pistore, M., Rossi, F.: Modeling concurrent, mobile and coordinated systems via graph transformations. In: [14]. ch. 4, pp. 189–268

    Google Scholar 

  21. Parisi-Presicce, F., Ehrig, H., Montanari, U.: Graph rewriting with unification and composition. In: Ehrig, H., Nagl, M., Rosenfeld, A., Rozenberg, G. (eds.) Graph Grammars 1986. LNCS, vol. 291, pp. 496–514. Springer, Heidelberg (1987)

    Google Scholar 

  22. Ribeiro, L.: Parallel Composition and Unfolding Semantics of Graph Grammars. PhD Thesis, Technische Universität Berlin, Berlin, p. 202 (June 1996)

    Google Scholar 

  23. Taentzer, G.: Parallel and Distributed Graph Transformation Formal Description and Application to Communication-Based Systems. PhD Thesis, TU Berlin, Berlin (1996)

    Google Scholar 

  24. Troyer, O.D., Janssen, R.: On modularity for conceptual data models and the consequences for subtyping, inheritance and overriding. In: Proceedings of the 9th IEEE Conference on Data Engineering (ICDE 1993), pp. 678–685. IEEE CS Press, Los Alamitos (1993)

    Chapter  Google Scholar 

  25. Ungar, D., Chambers, C., Chang, B.-W., Hölzle, U.: Organizing programs without classes. Lisp and Symbolic Computation 3, 4 (1991)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lüdtke Ferreira, A.P., Ribeiro, L. (2004). Derivations in Object-Oriented Graph Grammars. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds) Graph Transformations. ICGT 2004. Lecture Notes in Computer Science, vol 3256. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30203-2_29

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-30203-2_29

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-23207-0

  • Online ISBN: 978-3-540-30203-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics