The search result changed since you submitted your search request. Documents might be displayed in a different sort order.
  • search hit 4 of 46
Back to Result List

An open implementation for context-oriented layer composition in ContextJS

  • Context-oriented programming (COP) provides dedicated support for defining and composing variations to a basic program behavior. A variation, which is defined within a layer, can be de-/activated for the dynamic extent of a code block. While this mechanism allows for control flow-specific scoping, expressing behavior adaptations can demand alternative scopes. For instance, adaptations can depend on dynamic object structure rather than control flow. We present scenarios for behavior adaptation and identify the need for new scoping mechanisms. The increasing number of scoping mechanisms calls for new language abstractions representing them. We suggest to open the implementation of scoping mechanisms so that developers can extend the COP language core according to their specific needs. Our open implementation moves layer composition into objects to be affected and with that closer to the method dispatch to be changed. We discuss the implementation of established COP scoping mechanisms using our approach and present new scoping mechanismsContext-oriented programming (COP) provides dedicated support for defining and composing variations to a basic program behavior. A variation, which is defined within a layer, can be de-/activated for the dynamic extent of a code block. While this mechanism allows for control flow-specific scoping, expressing behavior adaptations can demand alternative scopes. For instance, adaptations can depend on dynamic object structure rather than control flow. We present scenarios for behavior adaptation and identify the need for new scoping mechanisms. The increasing number of scoping mechanisms calls for new language abstractions representing them. We suggest to open the implementation of scoping mechanisms so that developers can extend the COP language core according to their specific needs. Our open implementation moves layer composition into objects to be affected and with that closer to the method dispatch to be changed. We discuss the implementation of established COP scoping mechanisms using our approach and present new scoping mechanisms developed for our enhancements to Lively Kernel.show moreshow less

Export metadata

Additional Services

Search Google Scholar Statistics
Metadaten
Author details:Jens Lincke, Malte AppeltauerGND, Bastian Steinert, Robert HirschfeldORCiDGND
DOI:https://doi.org/10.1016/j.scico.2010.11.013
ISSN:0167-6423
Title of parent work (English):Science of computer programming
Publisher:Elsevier
Place of publishing:Amsterdam
Publication type:Article
Language:English
Year of first publication:2011
Publication year:2011
Release date:2017/03/26
Tag:Context-oriented programming; ContextJS; Dynamic adaptation; Open implementations; Scope
Volume:76
Issue:12
Number of pages:16
First page:1194
Last Page:1209
Organizational units:An-Institute / Hasso-Plattner-Institut für Digital Engineering gGmbH
Peer review:Referiert
Accept ✔
This website uses technically necessary session cookies. By continuing to use the website, you agree to this. You can find our privacy policy here.