liu.seSearch for publications in DiVA
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Bootstrapping a Modelica Compiler aiming at Modelica 4
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.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.
2011 (English)Conference paper, Published paper (Refereed)
Abstract [en]

What does it mean to bootstrap a compiler, and why do it? This paper reports on the first bootstrapping (i.e., a compiler can compile itself) of a full-scale EOO (Equation-based Object-Oriented) modeling language such as Modelica. The Modelica language has been modeled/implemented in the OpenModelica compiler (OMC) using an extended version of Modelica called MetaModelica. OMC models the MetaModelica language and is now compiling itself with good performance. Benefits include a more extensible maintainable compiler, also making it easier to add functionality such as debugging support. This work is in line with the recently started Modelica 4 design effort which includes moving implementation of language features from the compiler to a Modelica Core library, allowing compilers to become smaller while increasing correctness and portability. A number of language constructs discussed for Modelica 4 are already supported in some form by the bootstrapped compiler. Future work includes adapting language constructs according to the Modelica 4 design effort and extracting and restructuring parts of the Modelica implementation from the OMC compiler to instead reside in a Modelica Core library, making the compiler smaller and more extensible.

Place, publisher, year, edition, pages
Linköping University Electronic Press , 2011. 510-521 p.
Series
Linköping Electronic Conference Proceedings, ISSN 1650-3686 (print), 1650-3740 (online)
Keyword [en]
Compilation, Modelica, MetaModelica, meta-programming, metamodeling, modeling, simulation
National Category
Electrical Engineering, Electronic Engineering, Information Engineering
Identifiers
URN: urn:nbn:se:liu:diva-110259ISBN: 978-91-7393-096-3 (print)OAI: oai:DiVA.org:liu-110259DiVA: diva2:743877
Conference
8th International Modelica Conference (Modelica'2011), Dresden, Germany, March 20-22, 2011
Available from: 2014-09-05 Created: 2014-09-05 Last updated: 2015-05-28Bibliographically approved

Open Access in DiVA

fulltext(129 kB)598 downloads
File information
File name FULLTEXT01.pdfFile size 129 kBChecksum SHA-512
f090c6a8e60941b7f42efea5a3ba3a02baabad510de02b344083019a7029630ff0bc522da175e85691fa5c0e06351a8283f8d894cf027f2fd910fd8a7f92506e
Type fulltextMimetype application/pdf

Authority records BETA

Sjölund, MartinFritzson, PeterPop, Adrian

Search in DiVA

By author/editor
Sjölund, MartinFritzson, PeterPop, Adrian
By organisation
PELAB - Programming Environment LaboratoryThe Institute of Technology
Electrical Engineering, Electronic Engineering, Information Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 598 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

isbn
urn-nbn

Altmetric score

isbn
urn-nbn
Total: 101 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf