ABSTRACT
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.
- M. Appeltauer. ContextJ -- Context-oriented Programming for Java. In Proceedings of the 3rd Ph.D. Retreat of the HPI Research School on Service-oriented Systems Engineering, number 27. Hasso-Plattner-Institut, Potsdam, Germany, 2009.Google Scholar
- M. Appeltauer, R. Hirschfeld, and T. Rho. Dedicated Programming Support for Context-aware Ubiquitous Applications. In UBICOMM 2008: Proceedings of the 2nd International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies, pages 38--43, Washington, DC, USA, 2008. IEEE Computer Society Press. Google ScholarDigital Library
- D. Batory, J. N. Sarvela, and A. Rauschmayer. Scaling step-wise refinement. IEEE Transactions on Software Engineering, 30(6):355--371, 2003. Google ScholarDigital Library
- P. Costanza and R. Hirschfeld. Language Constructs for Context-oriented Programming: An Overview of ContextL. In DLS '05: Proceedings of the 2005 symposium on Dynamic languages, pages 1--10, New York, NY, USA, 2005. ACM Press. Google ScholarDigital Library
- P. Costanza, R. Hirschfeld, and W. D. Meuter. Efficient Layer Activation for Switching Context-Dependent Behavior. In D. E. Lightfoot and C. A. Szyperski, editors, Modular Programming Languages, 7th Joint Modular Languages Conference, JMLC 2006, volume 4228 of Lecture Notes in Computer Science, pages 84--103, Berlin, Heidelberg, Germany, September 19 2006. Springer-Verlag. Google ScholarDigital Library
- S. González, K. Mens, and A. Cádiz. Context-Oriented Programming with the Ambient Object System. Journal of Universal Computer Science, 14(20):3307--3332, 2008.Google Scholar
- D. R. Hanson and T. A. Proebsting. Dynamic variables. SIGPLAN Notices, 36(5):264--273, 2001. Google ScholarDigital Library
- M. Haupt and H. Schippers. A Machine Model for Aspect-Oriented Programming. In E. Ernst, editor, 21st European Conference on Object-Oriented Programming, ECOOP 2007, volume 4609 of Lecture Notes in Computer Science, pages 501--524, Berlin, Heidelberg, Germany, August 2007. Springer-Verlag. Google ScholarDigital Library
- R. Hirschfeld, P. Costanza, and M. Haupt. An Introduction to Context-Oriented Programming with ContextS. In J. S. Ralf Lämmel, Joost Visser, editor, Generative and Transformational Techniques in Software Engineering II, International Summer School, GTTSE 2007, Braga, Portugal, July 2--7. 2007, Revised Papers, volume 5235 of Lecture Notes in Computer Science, pages 396--407, Berlin, Heidelberg, Germany, 2008. Springer-Verlag. Google ScholarDigital Library
- R. Hirschfeld, P. Costanza, and O. Nierstrasz. Context-oriented Programming. Journal of Object Technology, 7(3):125--151, March-April 2008.Google ScholarCross Ref
- G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented Programming. In Proceedings 11th European Conference on Object-Oriented Programming, volume 1241, pages 220--242. Springer-Verlag, 1997.Google Scholar
- G. Kniesel, T. Rho, and S. Hanenberg. Evolvable Pattern Implementations need Generic Aspects. research report C-196, Dept. of Mathematical and Computing Sciences, Tokyo Institute of Technology, Tokyo, Japan, June 2004.Google Scholar
- H. Schippers, M. Haupt, R. Hirschfeld, and D. Janssens. An Implementation Substrate for Languages Composing Modularized Crosscutting Concerns. In Proc. SAC PSC. ACM Press, to appear, 2009. Google ScholarDigital Library
- H. Schippers, D. Janssens, M. Haupt, and R. Hirschfeld. Delegation-based semantics for modularizing crosscutting concerns. SIGPLAN Not., 43(10):525--542, 2008. Google ScholarDigital Library
- G. Schmidt. ContextR&ContextWiki. Master's thesis, Hasso-Plattner-Institut, Potsdam, 2008.Google Scholar
- C. Schubert. ContextPy&PyDCL - Dynamic Contract Layers for Python. Master's thesis, Hasso-Plattner-Institut, Potsdam, 2008.Google Scholar
- M. von Löwis, M. Denker, and O. Nierstrasz. Context-oriented Programming: Beyond Layers. In S. Demeyer and J.-F. Perrot, editors, ICDL '07: Proceedings of the 2007 international conference on Dynamic languages, volume 286 of ACM International Conference Proceeding Series, pages 143--156, New York, NY, USA, 2007. ACM Press. Google ScholarDigital Library
Index Terms
- A comparison of context-oriented programming languages
Recommendations
A framework for analyzing context-oriented programming languages
AbstractContext-aware systems keep on emerging as an intrinsic part of everyday activities. To cope with such situations, programming languages are extended to support the notion of context. Although context-oriented programming languages exist for over ...
Highlights- Conceptualizing context-oriented development.
- A framework for analyzing context-oriented programming languages.
- Analysis of three context-oriented programming languages: Subjective-C, ServalCJ, COBPjs.
- Findings: Context-...
Towards a framework for analyzing context-oriented programming languages
COP '21: Proceedings of the 13th ACM International Workshop on Context-Oriented Programming and Advanced ModularityContext-aware systems keep on emerging in all of our daily activities. To cope with this new situation, programming languages were extended to support the notion of context. Although context-oriented programming languages exist for over 15 years, they ...
Comments