*banner
 

Modelyze: a Gradually Typed Host Language for Embedding Equation-Based Modeling Languages
David Broman, Jeremy G. Siek

Citation
David Broman, Jeremy G. Siek. "Modelyze: a Gradually Typed Host Language for Embedding Equation-Based Modeling Languages". Technical report, EECS Department, University of California, Berkeley, UCB/EECS-2012-173, June, 2012.

Abstract
Equation-based modeling languages provide an effective means to simulate the physical part of a cyber-physical system. Such languages are complex domain-specific languages that enable model engineers, such as mechanical engineers, to declaratively model the dynamics of systems. However, these modeling languages do not support all modeling needs, which has lead to frequent revisions of state-of-the-art languages. In this article we explore a solution to this extensibility problem based on domain-specific embedded languages. We introduce a host language, named Modelyze, in which modeling languages may be easily embedded. The key features of Modelyze are first-class functions, which provide a mechanism to abstract components of a model, and symbolic expressions, to represent and manipulate equations. The type system for symbolic expressions supports model-level static error checking and provides an automatic lifting translation to provide seamless integration between the host language and the equations represented by symbolic expressions. The type system is based on gradual typing, enabling early static checking for model engineers while providing expressiveness for domain experts. We evaluate this approach by embedding a series of equation-based modeling languages in Modelyze and using them to develop models.

Electronic downloads

Citation formats  
  • HTML
    David Broman, Jeremy G. Siek. <a
    href="http://chess.eecs.berkeley.edu/pubs/914.html"
    ><i>Modelyze: a Gradually Typed Host Language for
    Embedding Equation-Based Modeling
    Languages</i></a>, Technical report,  EECS
    Department, University of California, Berkeley,
    UCB/EECS-2012-173, June, 2012.
  • Plain text
    David Broman, Jeremy G. Siek. "Modelyze: a Gradually
    Typed Host Language for Embedding Equation-Based Modeling
    Languages". Technical report,  EECS Department,
    University of California, Berkeley, UCB/EECS-2012-173, June,
    2012.
  • BibTeX
    @techreport{BromanSiek12_ModelyzeGraduallyTypedHostLanguageForEmbeddingEquationBased,
        author = {David Broman and Jeremy G. Siek},
        title = {Modelyze: a Gradually Typed Host Language for
                  Embedding Equation-Based Modeling Languages},
        institution = {EECS Department, University of California, Berkeley},
        number = {UCB/EECS-2012-173},
        month = {June},
        year = {2012},
        abstract = {Equation-based modeling languages provide an
                  effective means to simulate the physical part of a
                  cyber-physical system. Such languages are complex
                  domain-specific languages that enable model
                  engineers, such as mechanical engineers, to
                  declaratively model the dynamics of systems.
                  However, these modeling languages do not support
                  all modeling needs, which has lead to frequent
                  revisions of state-of-the-art languages. In this
                  article we explore a solution to this
                  extensibility problem based on domain-specific
                  embedded languages. We introduce a host language,
                  named Modelyze, in which modeling languages may be
                  easily embedded. The key features of Modelyze are
                  first-class functions, which provide a mechanism
                  to abstract components of a model, and symbolic
                  expressions, to represent and manipulate
                  equations. The type system for symbolic
                  expressions supports model-level static error
                  checking and provides an automatic lifting
                  translation to provide seamless integration
                  between the host language and the equations
                  represented by symbolic expressions. The type
                  system is based on gradual typing, enabling early
                  static checking for model engineers while
                  providing expressiveness for domain experts. We
                  evaluate this approach by embedding a series of
                  equation-based modeling languages in Modelyze and
                  using them to develop models.},
        URL = {http://chess.eecs.berkeley.edu/pubs/914.html}
    }
    

Posted by David Broman on 3 Jul 2012.
Groups: ptolemy
For additional information, see the Publications FAQ or contact webmaster at chess eecs berkeley edu.

Notice: This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright.

©2002-2018 Chess