首页 > 最新文献

Proceedings of the 12th ACM International Workshop on Context-Oriented Programming and Advanced Modularity最新文献

英文 中文
Zone-based Layer Activation: Context-specific Behavior Adaptations across Logically-connected Asynchronous Operations 基于区域的层激活:跨逻辑连接的异步操作的上下文特定行为适应
Stefan Ramson, Jens Lincke, Harumi Watanabe, R. Hirschfeld
Scoping behavior adaptations using dynamic extent is a crucial part of Context-oriented Programming (COP). In a synchronous execution model, dynamic extent ensures the activation of a layer for the entire duration of a block. An asynchronous execution model, however, breaks the intended semantics of dynamic extent. For example, using the await keyword postpones the execution of the block and returns to its caller. Thus, dynamic extent deactivates the behavior adaptation. Consequently, when resuming the postponed execution the layer is no longer active. In this paper, we propose a variant of dynamic extent that activates a layer for a block and all its logically-connected asynchronous operations. We show how zones can be used to track the asynchronous dynamic extent of a block. Further, we provide an implementation of our approach as an extension to ContextJS in JavaScript.
使用动态范围确定行为适应的范围是面向上下文编程(COP)的关键部分。在同步执行模型中,动态扩展确保在块的整个持续时间内激活层。然而,异步执行模型破坏了动态区段的预期语义。例如,使用await关键字可以延迟块的执行并返回给调用者。因此,动态程度使行为适应失效。因此,当恢复延迟的执行时,层不再活动。在本文中,我们提出了一种动态扩展的变体,它为一个块及其所有逻辑连接的异步操作激活一个层。我们将展示如何使用区域来跟踪块的异步动态范围。此外,我们还提供了一种实现方法,作为JavaScript中ContextJS的扩展。
{"title":"Zone-based Layer Activation: Context-specific Behavior Adaptations across Logically-connected Asynchronous Operations","authors":"Stefan Ramson, Jens Lincke, Harumi Watanabe, R. Hirschfeld","doi":"10.1145/3422584.3422764","DOIUrl":"https://doi.org/10.1145/3422584.3422764","url":null,"abstract":"Scoping behavior adaptations using dynamic extent is a crucial part of Context-oriented Programming (COP). In a synchronous execution model, dynamic extent ensures the activation of a layer for the entire duration of a block. An asynchronous execution model, however, breaks the intended semantics of dynamic extent. For example, using the await keyword postpones the execution of the block and returns to its caller. Thus, dynamic extent deactivates the behavior adaptation. Consequently, when resuming the postponed execution the layer is no longer active. In this paper, we propose a variant of dynamic extent that activates a layer for a block and all its logically-connected asynchronous operations. We show how zones can be used to track the asynchronous dynamic extent of a block. Further, we provide an implementation of our approach as an extension to ContextJS in JavaScript.","PeriodicalId":192954,"journal":{"name":"Proceedings of the 12th ACM International Workshop on Context-Oriented Programming and Advanced Modularity","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-07-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126996729","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Interfaces for Modular Reasoning in Context-Oriented Programming 面向上下文编程中模块化推理的接口
Paul Leger, H. Masuhara, Ismael Figueroa
Different activation mechanisms for Context-Oriented Programming (COP) like implicit activations have been proposed, increasing COP opportunities to be applied in real scenarios. However, activation mechanisms and base code definitions are insufficiently decoupled, as conditionals to activate layers require base code variable references. This hinders reuse, evolution, and modular reasoning of COP and base code, and therefore, uses of COP in real scenarios. This paper proposes interfaces, which are shared abstractions to communicate activation mechanisms and base code in a decoupled manner. Using these interfaces, an object can exhibit its internal state and behaviors, and conditionals use them to (de)activate layers. As layers are planned to be (re)used in different applications, developers can use interfaces to overcome the incompatibility between values exposed by a particular base code and values required by a layer. In addition, as a layer is a plain object, it can use an interface to exhibit the conditional evaluation of its activation to other layers to resolve conflicts among activations of layers. We apply this proposal to implicit activations in which evaluations of conditionals implicitly (de)activate layers. Finally, we illustrate the benefits of this proposal through RI-JS, a practical JavaScript library that currently supports interfaces, reactive activations (implementation variant for implicit activations), global and dynamic deployment, enter and exit transition processes, and partial methods.
针对上下文导向编程(COP),人们提出了不同的激活机制,如隐式激活,增加了COP在实际场景中的应用机会。然而,激活机制和基本代码定义没有充分解耦,因为激活层的条件需要基本代码变量引用。这阻碍了COP和基本代码的重用、发展和模块化推理,因此也阻碍了COP在实际场景中的使用。本文提出了接口,它是一种共享的抽象,以一种解耦的方式来通信激活机制和基本代码。使用这些接口,对象可以显示其内部状态和行为,条件使用它们来(取消)激活层。由于计划在不同的应用程序中(重新)使用层,开发人员可以使用接口来克服特定基本代码公开的值与层所需值之间的不兼容性。此外,由于一个层是一个普通对象,它可以使用接口向其他层展示其激活的条件计算,以解决层之间激活的冲突。我们将此建议应用于隐式激活,其中条件的评估隐式(取消)激活层。最后,我们通过RI-JS来说明这个建议的好处,RI-JS是一个实用的JavaScript库,目前支持接口、响应式激活(隐式激活的实现变体)、全局和动态部署、进入和退出转换过程以及部分方法。
{"title":"Interfaces for Modular Reasoning in Context-Oriented Programming","authors":"Paul Leger, H. Masuhara, Ismael Figueroa","doi":"10.1145/3422584.3423152","DOIUrl":"https://doi.org/10.1145/3422584.3423152","url":null,"abstract":"Different activation mechanisms for Context-Oriented Programming (COP) like implicit activations have been proposed, increasing COP opportunities to be applied in real scenarios. However, activation mechanisms and base code definitions are insufficiently decoupled, as conditionals to activate layers require base code variable references. This hinders reuse, evolution, and modular reasoning of COP and base code, and therefore, uses of COP in real scenarios. This paper proposes interfaces, which are shared abstractions to communicate activation mechanisms and base code in a decoupled manner. Using these interfaces, an object can exhibit its internal state and behaviors, and conditionals use them to (de)activate layers. As layers are planned to be (re)used in different applications, developers can use interfaces to overcome the incompatibility between values exposed by a particular base code and values required by a layer. In addition, as a layer is a plain object, it can use an interface to exhibit the conditional evaluation of its activation to other layers to resolve conflicts among activations of layers. We apply this proposal to implicit activations in which evaluations of conditionals implicitly (de)activate layers. Finally, we illustrate the benefits of this proposal through RI-JS, a practical JavaScript library that currently supports interfaces, reactive activations (implementation variant for implicit activations), global and dynamic deployment, enter and exit transition processes, and partial methods.","PeriodicalId":192954,"journal":{"name":"Proceedings of the 12th ACM International Workshop on Context-Oriented Programming and Advanced Modularity","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-07-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115788379","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Adaptive Variables for Declarative UAV Planning 声明式无人机规划的自适应变量
John Henry Burns, Xiaozhou Liang, Yu David Liu
Unmanned Aerial Vehicles (UAVs) are an important subset of autonomous robotics, offering unique opportunities in domains like merchandise delivery, geographical survey, and disaster recovery. The planning layer of UAVs is made up of high-level directives that instruct the system on how to achieve the plan's goals. UAVs execute their plans in the physical environment, and thus the plans must adapt to changes in the dynamic context. In this paper, we present a simple programming abstraction, adaptive variables, to declaratively define adaptation for UAV flight plans in a dynamic context. Building on top of a declarative language for expressing UAV flight plans, adaptive variables can change during a UAV flight based on predicates over physical data. We implement adaptive variable for Paparazzi and demonstrate its usefulness in adaptive UAV planning with the NPS Simulator.
无人驾驶飞行器(uav)是自主机器人的一个重要子集,在商品交付、地理调查和灾难恢复等领域提供了独特的机会。无人机的规划层由指导系统如何实现计划目标的高级指令组成。无人机在物理环境中执行计划,因此计划必须适应动态环境的变化。在本文中,我们提出了一个简单的编程抽象,自适应变量,以声明式地定义无人机飞行计划在动态环境中的自适应。在用于表达无人机飞行计划的声明性语言的基础上,自适应变量可以在无人机飞行期间基于物理数据上的谓词进行更改。我们为Paparazzi实现了自适应变量,并通过NPS模拟器演示了其在自适应无人机规划中的实用性。
{"title":"Adaptive Variables for Declarative UAV Planning","authors":"John Henry Burns, Xiaozhou Liang, Yu David Liu","doi":"10.1145/3422584.3422763","DOIUrl":"https://doi.org/10.1145/3422584.3422763","url":null,"abstract":"Unmanned Aerial Vehicles (UAVs) are an important subset of autonomous robotics, offering unique opportunities in domains like merchandise delivery, geographical survey, and disaster recovery. The planning layer of UAVs is made up of high-level directives that instruct the system on how to achieve the plan's goals. UAVs execute their plans in the physical environment, and thus the plans must adapt to changes in the dynamic context. In this paper, we present a simple programming abstraction, adaptive variables, to declaratively define adaptation for UAV flight plans in a dynamic context. Building on top of a declarative language for expressing UAV flight plans, adaptive variables can change during a UAV flight based on predicates over physical data. We implement adaptive variable for Paparazzi and demonstrate its usefulness in adaptive UAV planning with the NPS Simulator.","PeriodicalId":192954,"journal":{"name":"Proceedings of the 12th ACM International Workshop on Context-Oriented Programming and Advanced Modularity","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-07-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125438930","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
期刊
Proceedings of the 12th ACM International Workshop on Context-Oriented Programming and Advanced Modularity
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
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