English

Context-Oriented Programming: A Programming Paradigm for Autonomic Systems

Programming Languages 2012-04-02 v2

Abstract

Dynamic software adaptability is one of the central features leveraged by autonomic computing. However, developing software that changes its behavior at run time adapting to the operational conditions is a challenging task. Several approaches have been proposed in the literature to attack this problem at different and complementary abstraction levels: software architecture, middleware, and programming level. We focus on the support that ad-hoc programming language constructs may provide to support dynamically adaptive behaviors. We introduce context-oriented programming languages and we present a framework that positions the supported paradigm in the MAPE-K autonomic loop. We discuss the advantages of using context-oriented programming languages instead of other mainstream approaches based on dynamic aspect oriented programming languages and present a case study that shows how the proposed programming style naturally fits dynamic adaptation requirements. Finally, we discuss some known problems and outline a number of open research challenges.

Keywords

Cite

@article{arxiv.1105.0069,
  title  = {Context-Oriented Programming: A Programming Paradigm for Autonomic Systems},
  author = {Guido Salvaneschi and Carlo Ghezzi and Matteo Pradella},
  journal= {arXiv preprint arXiv:1105.0069},
  year   = {2012}
}
R2 v1 2026-06-21T18:00:47.073Z