Modeling with monads: extensible modeling semantics as syntactic sugar

Christoph Höger
{"title":"Modeling with monads: extensible modeling semantics as syntactic sugar","authors":"Christoph Höger","doi":"10.1145/2904081.2904084","DOIUrl":null,"url":null,"abstract":"We present an extensible implementation of Modelica-style modeling semantics. Modeling features are implemented using an intuitive encoding as an extensible state monad. Monadic computation naturally yields model composition and interpretation. This in turn allows for a clear separation between the modular aspects of a modeling language (e.g. classes and inheritance) and the symbolical and numerical treatment of models: While the former can be implemented by a compiler or interpreter, the latter can be moved into a core-library to be maintained by domain-experts. In a second step, we show how the elaboration aspects of the language can be removed by a correct and complete desugaring procedure. The residual language is a simple extension of a call-by-value λ-calculus. Thus it becomes possible to implement a compiler for a modeling language using existing standard techniques.","PeriodicalId":344062,"journal":{"name":"Proceedings of the 7th International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools","volume":"10 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 7th International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2904081.2904084","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

Abstract

We present an extensible implementation of Modelica-style modeling semantics. Modeling features are implemented using an intuitive encoding as an extensible state monad. Monadic computation naturally yields model composition and interpretation. This in turn allows for a clear separation between the modular aspects of a modeling language (e.g. classes and inheritance) and the symbolical and numerical treatment of models: While the former can be implemented by a compiler or interpreter, the latter can be moved into a core-library to be maintained by domain-experts. In a second step, we show how the elaboration aspects of the language can be removed by a correct and complete desugaring procedure. The residual language is a simple extension of a call-by-value λ-calculus. Thus it becomes possible to implement a compiler for a modeling language using existing standard techniques.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
用单子建模:可扩展的建模语义作为语法糖
我们提出了modelica风格建模语义的可扩展实现。建模特性使用直观的编码作为可扩展的状态单子来实现。一元计算自然产生模型组成和解释。这反过来又允许在建模语言的模块化方面(例如类和继承)和模型的符号和数值处理之间进行明确的分离:前者可以由编译器或解释器实现,后者可以移到核心库中,由领域专家维护。在第二步中,我们展示了如何通过正确和完整的脱糖程序去除语言的精雕细琢方面。残差语言是按值调用λ演算的简单扩展。因此,可以使用现有的标准技术实现建模语言的编译器。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Task graph based system partitioning for multirate integration QSS and multi-rate simulation of object-oriented models MORAP: a modular robotic arm platform for teaching and experimenting with equation-based modeling languages Modelica extensions for supporting message passing communication and dynamic data structures DESA: Optimization of variable structure modelica models using custom annotations
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1