JavaCtx: Seamless Toolchain Integration for Context-Oriented Programming
Guido Salvaneschi, Carlo Ghezzi, Matteo Pradella

TL;DR
JavaCtx enables seamless integration of context-oriented programming into Java by using coding conventions and semantics injection, simplifying development without source-to-source transformations.
Contribution
It introduces coding conventions and semantics injection for context-oriented programming in Java, avoiding disruptive source-to-source compilation.
Findings
Allows writing context-aware Java code with plain Java syntax
Enables seamless integration into existing Java applications
Facilitates development of context-oriented software in industry
Abstract
Context-oriented programming is an emerging paradigm addressing at the language level the issue of dynamic software adaptation and modularization of context-specific concerns. In this paper we propose JavaCtx, a tool which employs coding conventions to generate the context-aware semantics for Java programs and subsequently weave it into the application. The contribution of JavaCtx is twofold: the design of a set of coding conventions which allow to write context-oriented software in plain Java and the concept of context-oriented semantics injection, which allows to introduce the context-aware semantics without a source-to-source compilations process which disrupts the structure of the code. Both these points allow to seamless integrate JavaCtx in the existing industrial-strength appliances and by far ease the development of context-oriented software.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsContext-Aware Activity Recognition Systems · Advanced Software Engineering Methodologies · Real-Time Systems Scheduling
