ContextJ: Context-oriented Programming with Java
ContextJ: Context-oriented Programming with Java
复制标题
DOI:
10.11185/imt.6.399
复制
发表时间:
2011
影响因子:
--
通讯作者:
M. Appeltauer;R. Hirschfeld;M. Haupt;Hidehiko Masuhara
中科院分区:
文献类型:
--
作者:
M. Appeltauer;R. Hirschfeld;M. Haupt;Hidehiko Masuhara
Context-oriented programming (COP) allows for the modularization of context-dependent behavioral variations. So far, COP has been implemented for dynamically-typed languages such as Lisp, Smalltalk, Python, and Ruby relying on reflection mechanisms, and for the statically-typed programming language Java based on a library and a pre-processor. ContextJ is our COP implementation for Java. It properly integrates COP’s layer concept into the Java type system. ContextJ is compiler-based. As confirmed by a benchmark and a case study, it provides both better performance and higher-level abstraction mechanisms than its Java-based predecessors. In this paper, we present the ContextJ language and explain its constructs and semantics. Further, we give an overview of the implementation of our compiler and discuss run-time benchmarks.