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 eleven COP implementations, discuss their designs, and evaluate their performance.

[1]  Don S. Batory,et al.  Scaling step-wise refinement , 2004, IEEE Transactions on Software Engineering.

[2]  Stefan Hanenberg,et al.  Evolvable Pattern Implementations Need Generic Aspects , 2004, RAM-SE.

[3]  M. Appeltauer,et al.  Dedicated Programming Support for Context-Aware Ubiquitous Applications , 2008, 2008 The Second International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies.

[4]  David R. Hanson,et al.  Dynamic variables , 2001, PLDI '01.

[5]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[6]  Kim Mens,et al.  Context-Oriented Programming with the Ambient Object System , 2008, J. Univers. Comput. Sci..

[7]  Oscar Nierstrasz,et al.  Context-oriented programming: beyond layers , 2007, ICDL '07.

[8]  Michael Haupt,et al.  ContextJ: Context-oriented Programming with Java , 2011 .

[9]  Michael Haupt,et al.  Delegation-based semantics for modularizing crosscutting concerns , 2008, OOPSLA.

[10]  Michael Haupt,et al.  An Introduction to Context-Oriented Programming with ContextS , 2007, GTTSE.

[11]  Michael Haupt,et al.  A Machine Model for Aspect-Oriented Programming , 2007, ECOOP.

[12]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[13]  Andry Rakotonirainy,et al.  Context-oriented programming , 2003, MobiDe '03.

[14]  Michael Haupt,et al.  An implementation substrate for languages composing modularized crosscutting concerns , 2009, SAC '09.

[15]  Robert Hirschfeld,et al.  Language constructs for context-oriented programming: an overview of ContextL , 2005, DLS '05.

[16]  Wolfgang De Meuter,et al.  Efficient Layer Activation for Switching Context-Dependent Behavior , 2006, JMLC.