Proceedings of the 2007 International Conference on Dynamic Languages: In Conjunction With the 15th International Smalltalk Joi 2007
DOI: 10.1145/1352678.1352688
|View full text |Cite
|
Sign up to set email alerts
|

Context-oriented programming

Abstract: Context-dependent behavior is becoming increasingly important for a wide range of application domains, from pervasive computing to common business applications. Unfortunately, mainstream programming languages do not provide mechanisms that enable software entities to adapt their behavior dynamically to the current execution context. This leads developers to adopt convoluted designs to achieve the necessary runtime flexibility. We propose a new programming technique called Context-oriented Programming (COP) whi… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
30
0
1

Year Published

2009
2009
2016
2016

Publication Types

Select...
5
2
1

Relationship

0
8

Authors

Journals

citations
Cited by 57 publications
(33 citation statements)
references
References 21 publications
(35 reference statements)
0
30
0
1
Order By: Relevance
“…ContextL provides several special features that are presented in Section 3. Subsequently, several meta-level libraries for dynamic pro- gramming languages were developed, namely ContextS [9] for Smalltalk, ContextR [15] for Ruby, ContextJS for JavaScript, ContextPy [16] and PyContext [17] for Python, and ContextG for Groovy. Aside from these dynamic languages, three COP extensions to the Java programming language exist, namely ContextJ [1], ContextJ* [10], and ContextLogicAJ [2].…”
Section: Languagesmentioning
confidence: 99%
See 1 more Smart Citation
“…ContextL provides several special features that are presented in Section 3. Subsequently, several meta-level libraries for dynamic pro- gramming languages were developed, namely ContextS [9] for Smalltalk, ContextR [15] for Ruby, ContextJS for JavaScript, ContextPy [16] and PyContext [17] for Python, and ContextG for Groovy. Aside from these dynamic languages, three COP extensions to the Java programming language exist, namely ContextJ [1], ContextJ* [10], and ContextLogicAJ [2].…”
Section: Languagesmentioning
confidence: 99%
“…PyContext [17] suggests the concepts of dynamic variables [7] and implicit layer activation. Dynamic variables allow developers to access contextual state without additional pass-through parameters in the method signature.…”
Section: Special Featuresmentioning
confidence: 99%
“…Andersson et al compose and optimize special implementations of data structures and algorithms, considering matrix multiplication as a case study [2]. This work may be considered as a generalization of the dispatch mechanism in object-oriented languages, for instance in the sense of Context-Oriented Programming (COP) [76,27,14].…”
Section: Context-aware Compositionmentioning
confidence: 99%
“…Several COP extensions have been developed for dynamic programming languages such as Lisp [5], Smalltalk [7], Python [14,15], and Ruby [13]. They have been implemented using the respective language's meta-level facilities; none of them utilizes bytecode transformation as done in ContextJ.…”
Section: Previous and Related Workmentioning
confidence: 99%
“…A layer can be dynamically activated and composed with other layers, allowing fine-grained control of an application's runtime behavior. COP has been implemented as extension to several programming languages [5,7,[13][14][15] to support various problem domains.…”
Section: Introductionmentioning
confidence: 99%