Export Citations
Context information plays an increasingly important role in our information centric world. Software systems must adapt to changing contexts over time, and must change even while they are running. Unfortunately, mainstream programming languages and development environments do not support this kind of dynamic change very well, leading developers to implement complex designs to anticipate various dimensions of variability.
Context-oriented Programming (COP) directly supports variability depending on a wide range of dynamic attributes, making it possible to dispatch run-time behavior on any properties of the execution context.
By now, several researchers have started to work on Context-oriented Programming and related ideas, and first implementations ranging from first prototypes to mature platform extensions used in commercial deployments have illustrated how multi-dimensional dispatch can indeed be supported effectively to achieve expressive run-time variation in behavior.
We received 11 submissions. Each paper was reviewed by 3 members of our program committee. 10 papers were selected for presentation and publication in the proceedings of the workshop.
Proceeding Downloads
How should context-escaping closures proceed?
Context-oriented programming treats execution context explicitly and provides means for context-dependent adaptation at runtime. This is achieved, for example, using dynamic layer activation and contextual dispatch, where the context consists of a layer ...
Declarative definition of contexts with polymorphic events
This paper introduces a new model of event handling combining explicitly triggered events with events intercepted with aspect-oriented features. The model supports event abstraction, polymorphic references to events, and declarative definition of events ...
Transactional contexts: harnessing the power of context-oriented reflection
The emerging field of context-oriented programming gives a predominant role to the execution context of applications, and advocates the use of dedicated mechanisms to allow the elegant expression of behavioural adaptations to such context. With suitable ...
Towards safe and flexible object adaptation
In this paper, a programming language NextEJ is proposed. NextEJ is based on Epsilon model, which realizes object adaptation to contexts. The novelty of Epsilon model is its ability to make objects be able to freely enter or leave contexts dynamically ...
Improving the development of context-dependent Java applications with ContextJ
Context-oriented programming languages ease the design and implementation of context-dependent applications. ContextJ is a context-oriented extension to the Java programming language. In this paper, we assess the applicability of ContextJ language ...
A comparison of context-oriented programming languages
Context-oriented programming (COP) extensions have been implemented for several languages. Each concrete language design and implementation comes with different variations of the features of the COP paradigm. In this paper, we provide a comparison of ...
Model driven development of context aware software systems
This paper presents the first results of an ongoing work towards the realization of a model driven development framework for context awareness. Its core element consists of a domain specific modeling language called CAMEL (Context Awareness ModEling ...
Towards context-aware propagators: language constructs for context-aware adaptation dependencies
A context-aware system needs to reason about its current context of use and select applicable adaptations to activate or deactivate. This process is complex as often multiple contexts are available and improper interpretation of adaptation dependencies ...
Context-oriented programming with EventJava
Recent research on Distributed Event-based Systems (DEBS) has focussed on event correlation, which is the task of processing events to identify meaningful patterns of events in the event cloud. In DEBS, software components communicate by generating, ...
A semantics for context-oriented programming with layers
Context-oriented programming (COP) is a new programming approach whereby the context in which expressions evaluate can be adapted as a program runs. COP provides a degree of flexibility beyond object-oriented programming, while arguably retaining more ...
Cited By
Index Terms
- Proceedings of the 1st ACM International Workshop on Context-Oriented Programming