Advertisement

Teaching Computer Language Handling - From Compiler Theory to Meta-modelling

  • Terje Gjøsæter
  • Andreas Prinz
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6491)

Abstract

Most universities teach computer language handling by mainly focussing on compiler theory, although MDA (model-driven architecture) and meta-modelling are increasingly important in the software industry as well as in computer science. In this article, we investigate how traditional compiler theory compares to meta-modelling with regard to formally defining the different aspects of a language, and how we can expand the focus in computer language handling courses to also include meta-model-based approaches. We give an outline of a computer language handling course that covers both paradigms, and share some experiences from running a course based on this outline at the University of Agder.

Keywords

Operational Semantic Graph Transformation Abstract Syntax Graph Grammar Graphical Notation 
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.
    Kelly, S., Tolvanen, J.P.: Domain-Specific Modeling. Wiley Interscience, Hoboken (2008)CrossRefGoogle Scholar
  2. 2.
    Henriques, P.R., Pereira, M.J., Mernik, M., Lenič, M.: Automatic generation of language-based tools. In: Second Workshop on Language Descriptions, Tools and Applications, LDTA 2002. Electronic Notes in Theoretical Computer Science, vol. 65, pp. 77–96. Elsevier Science Publishers, Amsterdam (2002)Google Scholar
  3. 3.
    Kleppe, A.: A language is more than a metamodel. In: ATEM 2007 Workshop (2007), http://megaplanet.org/atem2007/ATEM2007-18.pdf
  4. 4.
    Nytun, J.P., Prinz, A., Tveit, M.S.: Automatic generation of modelling tools. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 268–283. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Griffin, C.: Using EMF. Technical report, IBM: Eclipse Corner Article (2003), http://www.eclipse.org/articles/Article-UsingEMF/using-emf.html
  6. 6.
    Sethi, R.: Programming Languages Concepts and Constructs. Addison-Wesley, Reading (1996)zbMATHGoogle Scholar
  7. 7.
    van Eijk, P., Belinfante, A., Eertink, H., Alblas, H.: The Term Processor Generator Kimwitu. CTIT Technical report 96-49, University of Twente (1996), http://fmt.cs.utwente.nl/kimwitu/
  8. 8.
    OMG Editor: Meta Object Facility (MOF) Specification. Technical report, Object Management Group (2002), http://www.omg.org/docs/formal/02-04-03.pdf
  9. 9.
    OMG Editor: Revised Submission to OMG RFP ad/2003-04-07: Meta Object Facility (MOF) 2.0 Core Proposal. Technical report, Object Management Group (2003), http://www.omg.org/docs/formal/06-01-01.pdf
  10. 10.
    d’Anjou, J., Fairbrother, S., Kehn, D., Kellermann, J., McCarthy, P.: The Java Developer’s Guide to Eclipse. Addison-Wesley, Reading (2004)Google Scholar
  11. 11.
    Prinz, A., Scheidgen, M., Tveit, M.S.: A Model-based Standard for SDL. In: Gaudin, E., Najm, E., Reed, R. (eds.) SDL 2007. LNCS, vol. 4745, pp. 1–18. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  12. 12.
    Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G.: Handbook of Graph Grammars and Computing by Graph Transformation. Applications, Languages and tools, vol. 2. World Scientific, Singapore (1999)CrossRefzbMATHGoogle Scholar
  13. 13.
    Efftinge, S., Friese, P., Haase, A., Hübner, D., Kadura, C., Kolb, B., Köhnlein, J., Moroff, D., Thoms, K., Völter, M., Schönbach, P., Eysholdt, M.: OpenArchitectureWare User Guide (2008), http://www.eclipse.org/gmt/oaw/doc/4.3/html/contents/index.html
  14. 14.
    Jouault, F., Bézivin, J., Kurtev, I.: TCS: a DSL for the Specification of Textual Concrete Syntaxes in Model Engineering. In: Proceedings of the Fifth International Conference on Generative Programming and Component Engineering, GPCE 2006, pp. 249–254 (2006)Google Scholar
  15. 15.
    Scheidgen, M.: Textual Editing Framework (2008), http://www2.informatik.hu-berlin.de/sam/meta-tools/tef/documentation.html
  16. 16.
    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
  17. 17.
    GMF developers: Eclipse Graphical Modeling Framework (2008), http://www.eclipse.org/gmf
  18. 18.
    GEF developers: GEF documentation (2008), http://www.eclipse.org/gef/reference/documentation.php
  19. 19.
    JET developers: JET Tutorial part 1 (2004), http://www.eclipse.org/articles/ArticleJET/jet_tutorial1.html
  20. 20.
    Musset, J., Juliot, É., Lacrampe, S.: Acceleo User Guide (2008), http://acceleo.org/doc/obeo/en/acceleo-2.6-user-guide.pdf.2.6edn
  21. 21.
    Plotkin, G.D.: A Structural Approach to Operational Semantics. Technical Report DAIMI FN-19, University of Aarhus, University of Aarhus (1981)Google Scholar
  22. 22.
    Grunske, L., Geiger, L., Zündorf, A., Eetvelde, V., Van Gorp Niels, P., Varró, D.: Using Graph Transformation for Practical Model Driven Software Engineering. In: Model Driven Software Engineering, pp. 91–118. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  23. 23.
    Scheidgen, M., Fischer, J.: Human comprehensible and machine processable specifications of operational semantics. In: Akehurst, D.H., Vogel, R., Paige, R.F. (eds.) ECMDA-FA. LNCS, vol. 4530, pp. 157–171. Springer, Heidelberg (2007)Google Scholar
  24. 24.
    Sadilek, D.A., Wachsmuth, G.: Prototyping visual interpreters and debuggers for domain-specific modelling languages. In: Schieferdecker, I., Hartman, A. (eds.) ECMDA-FA 2008. LNCS, vol. 5095, pp. 63–78. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  25. 25.
    Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools, 2nd edn. Addison-Wesley, Reading (2007)zbMATHGoogle Scholar
  26. 26.
    Clark, T., Sammut, P., Willans, J.: Applied Metamodeling – A Foundation for Language Driven Development, 2nd edn. Ceteva (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Terje Gjøsæter
    • 1
  • Andreas Prinz
    • 1
  1. 1.Faculty of Engineering and ScienceUniversity of AgderGrimstadNorway

Personalised recommendations