Towards Modular Reasoning for Context-Oriented Programs

Tomoyuki Aotani, Gary T. Leavens
{"title":"Towards Modular Reasoning for Context-Oriented Programs","authors":"Tomoyuki Aotani, Gary T. Leavens","doi":"10.1145/2955811.2955819","DOIUrl":null,"url":null,"abstract":"Context-oriented programming (COP) is an approach to modularity for applications whose behavior may vary depending on the status of the environment in which they execute and the software's own state. Languages supporting COP provide partial methods to modularly define behavioral variations of methods specific to a context, layers to group the partial methods and layer activation mechanisms to dynamically compose layers. Because the behavior of these partial methods often differs from that of the base methods they override, reasoning about context-oriented programs seems to require a case analysis based on partial methods and context information from the entire program, which is not scalable. In this paper we explain a new language feature, layer interfaces, which allows modular specification and verification of context-oriented programs. We demonstrate these techniques by using examples.","PeriodicalId":376722,"journal":{"name":"Proceedings of the 18th Workshop on Formal Techniques for Java-like Programs","volume":"11 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 18th Workshop on Formal Techniques for Java-like Programs","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2955811.2955819","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5

Abstract

Context-oriented programming (COP) is an approach to modularity for applications whose behavior may vary depending on the status of the environment in which they execute and the software's own state. Languages supporting COP provide partial methods to modularly define behavioral variations of methods specific to a context, layers to group the partial methods and layer activation mechanisms to dynamically compose layers. Because the behavior of these partial methods often differs from that of the base methods they override, reasoning about context-oriented programs seems to require a case analysis based on partial methods and context information from the entire program, which is not scalable. In this paper we explain a new language feature, layer interfaces, which allows modular specification and verification of context-oriented programs. We demonstrate these techniques by using examples.
面向上下文程序的模块化推理
面向上下文的编程(COP)是一种实现应用程序模块化的方法,这些应用程序的行为可能会根据其执行环境的状态和软件自身的状态而变化。支持COP的语言提供了部分方法来模块化地定义特定于上下文的方法的行为变化,层来对部分方法进行分组,层激活机制来动态地组合层。因为这些部分方法的行为通常不同于它们覆盖的基本方法,所以对面向上下文的程序进行推理似乎需要基于部分方法和来自整个程序的上下文信息的案例分析,这是不可伸缩的。在本文中,我们解释了一个新的语言特性,层接口,它允许模块化规范和验证面向上下文的程序。我们通过示例来演示这些技术。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信