Context-oriented programming

  • Authors:
  • Roger Keays;Andry Rakotonirainy

  • Affiliations:
  • Queensland University of Technology, Brisbane, Australia;Queensland University of Technology, Brisbane, Australia

  • Venue:
  • Proceedings of the 3rd ACM international workshop on Data engineering for wireless and mobile access
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

In an environment where computing power is ubiquitous, software engineers need to cater for many different variables beyond their control. They face what has been termed the pervasive problem. Their products need to be adaptable and portable, yet still retain a simple code base. Context-Oriented Programming (COP) is a new method of programming which aims to alleviate these problems by incorporating context as a first-class construct of a programming language, much in the same way that variables, classes, and functions form the first-class constructs of many modern languages.A context-oriented program is one with many 'gaps' or 'open-terms', and the context-filling operation completes such a program by dynamically selecting portions of code from a repository of candidates to fill these gaps. This selection process is based on the execution context of the program and a description of the open-term's requisites.This paper describes the requirements for COP, focusing on this fundamental operation of context-filling. An implementation which meets many of these requirements is also presented.