SMT-based Debugging Support for Context-oriented Programming

Research output: Contribution to journalArticlepeer-review


COP (Context-Oriented Programming) languages such as ContextJ* enable programmers to describe the context-aware behavior elegantly. The primary system behavior can be separated from the context-aware behavior. On the other hand, unfortunately, it becomes difficult to debug the programs due to the complexity of COP execution and the dependence between objects and contexts. To deal with this problem, this paper proposes CJAdviser, SMT-based debugging support for ContextJ*. In CJAdviser, the execution trace of a ContextJ* program is converted to a context dependence graph that can be analyzed by the SMT solver Yices. Using CJAdviser, we can check a variety of object-context dependencies.

Original languageEnglish
Pages (from-to)108-114
Number of pages7
JournalComputer Software
Issue number3
Publication statusPublished - 2012

All Science Journal Classification (ASJC) codes

  • Software


Dive into the research topics of 'SMT-based Debugging Support for Context-oriented Programming'. Together they form a unique fingerprint.

Cite this