David Broman
Department of Computer and Information Science, LinkÄoping University, Sweden
Peter Fritzon
Department of Computer and Information Science, LinkÄoping University, Sweden
Download articlePublished in: Proceedings of the 1st International Workshop on Equation-Based Object-Oriented Languages and Tools
Linköping Electronic Conference Proceedings 24:10, p. 111–126
Published: 2007-07-18
ISBN: 978-91-7519-822-4
ISSN: 1650-3686 (print), 1650-3740 (online)
Modelica is an open standardized language used for modeling and simulation of complex physical systems. The language speci cation defines a formal concrete syntax; but the semantics is informally described using natural language. The latter makes the language hard to interpret; maintain and reason about; which affect both tool development and language evolution. Even if a completely formal semantics of the Modelica language can be seen as a natural goal; it is a well- known fact that defining understandable and concise formal semantics specifications for large and complex languages is a very hard problem. In this paper; we will discuss different aspects of formulating a Modelica specification; both in terms of what should be specified and how it can be done. Moreover; we will further argue that a "middle-way" strategy can make the specification both clearer and easier to reason about. A proposal is outlined; where the current informally specified semantics is complemented with several context-sensitive grammars; specifying intermediate representations of abstract syntax. We believe that this kind of evolutionary strategy is easier to gain acceptance for; and is more realistic in the short-term; than a revolutionary approach of using a fullyformal semantics definition of the language.
1. Alfred V. Aho; Monica S. Lam; Ravi Sethi; and Je®rey D. Ullman. Compilers: Principles; Techniques; and Tools. Addison-Wesley; 2nd edition.
2. David Broman; Peter Fritzson; and S¶ebastien Furic. Types in the Modelica Lan- guage. In Proceedings of the Fifth International Modelica Conference; Vienna; Austria; 2006.
3. David Broman; Kaj NystrÄom; and Peter Fritzson. Determining Over- and Under- Constrained Systems of Equations using Structural Constraint Delta. In Pro- ceedings of the Fifth International Conference on Generative Programming and Component Engineering (GPCE’06); Portland; Oregon; USA; 2006. ACM Press.
4. Dynasim. Dymola - Dynamic Modeling Laboratory with Modelica (Dynasim AB). http://www.dynasim.se/ [Last accessed: 22 June 2007].
5. Christoph Nytsch-Geusen et. al. MOSILAB: Development of a Modelica based generic simulation tool supporting model structural dynamics. In Proceedings of the 4th International Modelica Conference; Hamburg; Germany; 2005.
6. Peter Fritzson. Developing E±cient Language Implementations from Structural and Natural Semantics - Draft Version 0.97. 2006. Book draft available from: http://www.ida.liu.se/~pelab/rml/.