Reflective Reconfiguration Support for Context-dependent Software Updates (RECOCO)

Ensuring that software can display different behavior in different use contexts requires adapting software at runtime in dynamically created scopes (e.g. in a thread, in a client session, in a collaboration). Context-Oriented Programming (COP) offers dedicated language constructs for performing such dynamically scoped adaptations.

However, like any dynamic software adaptation technique, COP hits a conceptual barrier when new variations of existing program entities are integrated into a running system: dynamically scoped adaptations may occur at stages where the affected application components themselves are in a transitional, inconsistent state.

The aim of this project is two-fold:

  • the description of the foundations of context-oriented programming that allows systematic reasoning about system-wide consistency in the presence of dynamically scoped adaptations
  • the creation of a reflective architecture for context-oriented programming languages that accommodates implementing application-specific policies for dealing with consistency conflicts


More information about the project can be found at

Project fiche

Project partners