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. Starting from this observation, Context-Oriented Programming (COP) has emerged as a solution to directly support variability depending on a wide range of dynamic attributes, making it possible to dispatch run-time behaviour on any property of the execution context.
The goal of the 4th International Workshop on Context-Oriented Programming (COP'12) was to further establish context orientation as a common thread to language design, application development, and system support. Several researchers are working on Context-Oriented Programming and related ideas, and implementations ranging from 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 behavioural variations.
This is a follow-up event to 3 consecutive successful editions of the workshop at ECOOP 2009, 2010 and 2011, each attracting around 30 participants.
The workshop received 5 submissions. Each paper was reviewed by 3 members of the program committee. All of the 5 submissions were selected for presentation at the workshop, and publication in this workshop proceedings.
Proceeding Downloads
Declarative layer composition in framework-based environments
Context-oriented programming (COP) can improve modularity by dedicated language constructs for crosscutting concerns. Although COP could be used in any application domain in general, its current implementations may require adaptations of source code ...
Scoping changes in self-supporting development environments using context-oriented programming
Interactive development in self-supporting systems like Smalltalk or the Lively Kernel allows for an explorative and direct development workflow. Because of the immediate and direct feedback loops, changes to core behavior can lead to accidentally ...
Uniting global and local context behavior with context Petri nets
Context-oriented programming enables adaptation of systems to their execution environment. Behavioral adaptations are defined in the system and then associated to a context. Such adaptations are made available at runtime when their context is deemed ...
Bridging real-world contexts and units of behavioral variations by composite layers
This paper proposes a new linguistic construct composite layers and an extension of EventCJ with it. A composite layer is implicitly activated when the declared condition is met. This extension bridges the gap between contexts and units of behavioral ...
DynamicSchema: a lightweight persistency framework for context-oriented data management
While context-oriented programming technology so far has focused mostly on behavioral adaptation, context-oriented data management has received much less attention. In this paper we make a case for the problem of context-oriented data management, using ...
Index Terms
- Proceedings of the 4th ACM International Workshop on Context-Oriented Programming