From traditional software systems to context-oriented applications

Click here to download a PDF file.


schema  schema


  • Context awareness
  • Dynamic adaptation
  • Programming languages
  • Software Variability


Context-Oriented Programming

Mainstream programming languages do not enable software applications to easily adapt their behaviour dynamically to changing contexts of use, such as time, space, weather, user preferences or habits, or a device's energy consumption or battery level.

We investigate new programming languages and abstractions specifically dedicated to define context-specific variations, and to allow these variations to be enabled dynamically, even on the fly and for already deployed software.


The UCL collaboration offer

• Design & development of tailor-made context-aware programming languages;

• Expertise and support in the implementation of context-aware programming languages and applications;

• Extending programming languages to make them more context-aware;

• Awareness raising for the need of context-awareness in software-intensive systems.


Current status

– Prototypes of context-oriented programming languages, often as extensions to existing programming languages such as CLOS, Subjective-C, Ruby and JavaScript.

– Cases studies such as a mobile city guide, adaptive web applications, a car dashboard system, an enterprise resource management system, an emergency support system.

– Possible application fields are “smart” scenarios (devices, vehicles, buildings…), mobile apps, user empowerment, participative citizenship, adaptive web apps.


Possible partnership

If your company is developing or interested in software products, products or services that depend on software, which may benefit from the enhanced possibilities offered by context awareness and dynamic adaptation to context of use, we are interested in collaborations ranging:

• from awareness raising and joint case studies,

• to the development and application of state-of-the-art technology.


Interested to learn more?
Please contact:

Sébastien ADAM
Technological Transfer Advisor 
010 47 24 43

Alternative contact


Professor in Computer Science

010 47 91 11