Change search
ReferencesLink to record
Permanent link

Direct link
Towards Modelica 4 Meta-Programming and Language Modeling with MetaModelica 2.0
Linköping University, Department of Computer and Information Science, PELAB - Programming Environment Laboratory. Linköping University, The Institute of Technology.ORCID iD: 0000-0002-3435-4996
Linköping University, Department of Computer and Information Science, PELAB - Programming Environment Laboratory. Linköping University, The Institute of Technology.
Linköping University, Department of Computer and Information Science, PELAB - Programming Environment Laboratory. Linköping University, The Institute of Technology.
2011 (English)Report (Other academic)
Abstract [en]

This report gives a language definition and tutorial on how to model languages using MetaModelica 2.0 – an extension of Modelica 3.2 designed for efficient language modeling. Starting from an extremely simple language, a series of small languages are modeled by gradually adding features. Both interpretive and translational language semantics are modeled. Exercises with solutions are given.

The approach of allowing the modeling language to model language semantics in principle allows the definition of language semantics in libraries, which could be used to reverse the current trend of model compilers becoming very large and complex.

MetaModelica 2.0 builds on MetaModelica 1.0 which was the first Modelica language version that supports language modeling, and has been in extensive use since 2005, primarily in the development of the OpenModelica compiler.

The following version of MetaModelica, called MetaModelica 2.0, is described in this report. It is easier to use since it also supports the standard Modelica 3 language features as well as additional modeling features for expressiveness and conciseness. It is implemented within the OpenModelica compiler itself. This means that the OpenModelica compiler supporting MetaModelica 2.0 is bootstrapped, i.e., it compiles itself.

This work is strongly connected to the Modelica 4 effort announced by Modelica Association in September 2010, which includes moving language functionality into library packages to achieve more extensible and modular Modelica model compilers. The MetaModelica language features contribute to realizing that goal. The language features have been proven in large-scale usage in the packages within the OpenModelica compiler. However, much work still remains in improving the modularity and interface properties that are expected by library packages.

Place, publisher, year, edition, pages
Linköping: Linköping University Electronic Press , 2011. , 297 p.
Series
Technical reports in Computer and Information Science, ISSN 1654-7233 ; 2011:10
National Category
Engineering and Technology
Identifiers
URN: urn:nbn:se:liu:diva-68361OAI: oai:DiVA.org:liu-68361DiVA: diva2:418188
Available from: 2011-05-20 Created: 2011-05-20 Last updated: 2014-10-08Bibliographically approved

Open Access in DiVA

fulltext(1089 kB)1380 downloads
File information
File name FULLTEXT01.pdfFile size 1089 kBChecksum SHA-512
916043eeb2261c641f7a6dca7064792471cb6e88799a2425404d4e3cc75624548e47efb313c1dee4c3e68e693d326cbe9b081ed80977a9988ad90d8ffc2ef5d5
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Fritzson, PeterPop, AdrianSjölund, Martin
By organisation
PELAB - Programming Environment LaboratoryThe Institute of Technology
Engineering and Technology

Search outside of DiVA

GoogleGoogle Scholar
Total: 1380 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

Total: 1367 hits
ReferencesLink to record
Permanent link

Direct link