Advertisement

Reference Attribute Grammars for Metamodel Semantics

  • Christoff Bürger
  • Sven Karol
  • Christian Wende
  • Uwe Aßmann
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6563)

Abstract

While current metamodelling languages are well-suited for the structural definition of abstract syntax and metamodelling platforms like the Eclipse Modelling Framework (EMF) provide various means for the specification of a textual or graphical concrete syntax, techniques for the specification of model semantics are not as matured. Therefore, we propose the application of reference attribute grammars (RAGs) to alleviate the lack of support for formal semantics specification in metamodelling. We contribute the conceptual foundations to integrate metamodelling languages and RAGs, and present JastEMF – a tool for the specification of EMF metamodel semantics using JastAdd RAGs. The presented approach is exemplified by an integrated metamodelling example. Its advantages, disadvantages and limitations are discussed and related to metamodelling, attribute grammars (AGs) and other approaches for metamodel semantics.

Keywords

Object Constraint Language Abstract Syntax Concrete Syntax Eclipse Modelling Framework Abstract State Machine 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Selic, B.: The Theory and Practice of Modeling Language Design for Model-Based Software Engineering – A Personal Perspective. In: GTTSE 2009. LNCS, vol. 6491, pp. 290–321. Springer, Heidelberg (2011)Google Scholar
  2. 2.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF – Eclipse Modeling Framework, 2nd edn. Addison-Wesley, Reading (2008)Google Scholar
  3. 3.
    Hedin, G.: Reference Attributed Grammars. Informatica (Slovenia) 24(3), 301–317 (2000)zbMATHGoogle Scholar
  4. 4.
    Knuth, D.E.: Semantics of Context-Free Languages. Theory of Computing Systems 2(2), 127–145 (1968)MathSciNetzbMATHGoogle Scholar
  5. 5.
    Ekman, T., Hedin, G.: The JastAdd system — modular extensible compiler construction. Science of Computer Programming 69(1-3), 14–26 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    ATLAS Group: ATLAS Transformation Language (ATL) User Guide (2006), http://wiki.eclipse.org/ATL/User_Guide
  7. 7.
    Efftinge, S., et al.: openArchitectureWare User Guide v.4.3.1 (2008), http://www.openarchitectureware.org/pub/documentation/4.3.1/
  8. 8.
    Oldevik, J.: MOFScript User Guide v.0.8 (2009), http://www.eclipse.org/gmt/mofscript/doc/MOFScript-User-Guide-0.8.pdf
  9. 9.
    Heidenreich, F., Johannes, J., Karol, S., Seifert, M., Wende, C.: Derivation and Refinement of Textual Syntax for Models. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 114–129. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  10. 10.
    Krahn, H., Rumpe, B., Völkel, S.: MontiCore: Modular Development of Textual Domain Specific Languages. In: TOOLS 2008 (Objects, Components, Models and Patterns). LNBIP, vol. 11, pp. 297–315. Springer, Heidelberg (2008)Google Scholar
  11. 11.
    Efftinge, S., Völter, M.: oAW xText: A framework for textual DSLs. In: Workshop on Modeling Symposium at Eclipse Summit (2006)Google Scholar
  12. 12.
    Kolovos, D.S.: Editing EMF models with Exeed (EXtended Emf EDitor) (2007), http://www.eclipse.org/gmt/epsilon/doc/Exeed.pdf
  13. 13.
    Ekman, T.: Extensible Compiler Construction. PhD thesis, University of Lund (2006)Google Scholar
  14. 14.
    Börger, E., Stark, R.F.: Abstract State Machines: A Method for High-Level System Design and Analysis. Springer, Heidelberg (2003)CrossRefzbMATHGoogle Scholar
  15. 15.
    Vogt, H.H., Swierstra, D., Kuiper, M.F.: Higher Order Attribute Grammars. In: PLDI 1989, pp. 131–145. ACM, New York (1989)Google Scholar
  16. 16.
    OMG: Object constraint language, version 2.2 (2010), http://www.omg.org/spec/OCL/2.2/
  17. 17.
    Farrow, R.: Automatic Generation of Fixed-Point-Finding Evaluators for Circular, but Well-defined, Attribute Grammars. In: SIGPLAN 1986, pp. 85–98. ACM, New York (1986)Google Scholar
  18. 18.
    Boyland, J.T.: Remote attribute grammars. Journal of the ACM 52(4), 627–687 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Magnusson, E.: Object-Oriented Declarative Program Analysis. PhD thesis, University of Lund (2007)Google Scholar
  20. 20.
    Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An Overview of AspectJ. In: Lee, S.H. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  21. 21.
    Bürger, C., Karol, S.: Towards Attribute Grammars for Metamodel Semantics. Technical report, Technische Universität Dresden (2010) ISSN 1430-211XGoogle Scholar
  22. 22.
    Hedin, G.: Generating Language Tools with JastAdd. In: Lämmel, R. (ed.) GTTSE 2009. LNCS, vol. 6491. Springer, Heidelberg (2011)Google Scholar
  23. 23.
    Reps, T., Teitelbaum, T., Demers, A.: Incremental Context-Dependent Analysis for Language-Based Editors. ACM (TOPLAS) 5(3), 449–477 (1983)CrossRefGoogle Scholar
  24. 24.
    Maddox III, W.H.: Incremental Static Semantic Analysis. PhD thesis, University of California at Berkeley (1997)Google Scholar
  25. 25.
    Goldschmidt, T., Becker, S., Uhl, A.: Classification of Concrete Textual Syntax Mapping Approaches. In: Schieferdecker, I., Hartman, A. (eds.) ECMDA-FA 2008. LNCS, vol. 5095, pp. 169–184. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  26. 26.
    Nilsson-Nyman, E., Hedin, G., Magnusson, E., Ekman, T.: Declarative Intraprocedural Flow Analysis of Java Source Code. Electron. Notes Theor. Comput. Sci. 238(5), 155–171 (2009)CrossRefGoogle Scholar
  27. 27.
    Muller, P., Fleurey, F., Jézéquel, J.: Weaving Executability into Object-Oriented Meta-languages. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 264–278. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  28. 28.
    Nagl, M. (ed.): Building Tightly Integrated Software Environments: The IPSEN Approach. LNCS, vol. 1170. Springer, Heidelberg (1996), http://www.springerlink.com/content/978-3-540-61985-7/ Google Scholar
  29. 29.
    Nickel, U., Niere, J., Zündorf, A.: The FUJABA environment. In: ICSE 2000, pp. 742–745. ACM, New York (2000)Google Scholar
  30. 30.
    Amelunxen, C., Königs, A., Rötschke, T., Schürr, A.: MOFLON: A Standard-Compliant Metamodeling Framework with Graph Transformations. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 361–375. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  31. 31.
    Chen, K., Sztipanovits, J., Abdelwalhed, S., Jackson, E.K.: Semantic Anchoring with Model Transformations. In: Hartman, A., Kreische, D. (eds.) ECMDA-FA 2005. LNCS, vol. 3748, pp. 115–129. Springer, Heidelberg (2005)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Christoff Bürger
    • 1
  • Sven Karol
    • 1
  • Christian Wende
    • 1
  • Uwe Aßmann
    • 1
  1. 1.Institut für Software- und MultimediatechnikTechnische Universität DresdenDresdenGermany

Personalised recommendations