Title of article :
An open implementation for context-oriented layer composition in ContextJS
Author/Authors :
Jens Lincke، نويسنده , , Malte Appeltauer، نويسنده , , Bastian Steinert، نويسنده , , Robert Hirschfeld، نويسنده ,
Issue Information :
ماهنامه با شماره پیاپی سال 2011
Pages :
16
From page :
1194
To page :
1209
Abstract :
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 mechanisms developed for our enhancements to Lively Kernel.
Keywords :
Scope , Open implementations , Context-oriented programming , Dynamic adaptation , ContextJS
Journal title :
Science of Computer Programming
Serial Year :
2011
Journal title :
Science of Computer Programming
Record number :
1080231
Link To Document :
بازگشت