EventCJ: A Context-Oriented Programming Language with Declarative Event-based Context Transition (bibtex)
by Tetsuo Kamina, Tomoyuki Aotani and Hidehiko Masuhara
Abstract:
This paper proposes EventCJ, a context-oriented programming (COP) language that can modularly control layer activation based on user-defined events. In addition to defining context-specific behaviors by using existing COP constructs, the EventCJ programmer declares events to specify when and on which instance layer switching should happen, and layer transition rules to specify which layers should be activated/deactivated upon events. These constructs enable controlling layer activation on a per-instance basis, separately from a base program. We also demonstrate an approach to verify safety properties of layer transitions by using a model checker. With these advantages, EventCJ enables more modular descriptions of context-aware programs, especially when layer switching is triggered in many places of a program, or by activities external to the base program. We implemented a prototype EventCJ compiler with Eclipse IDE support.
Reference:
EventCJ: A Context-Oriented Programming Language with Declarative Event-based Context Transition (Tetsuo Kamina, Tomoyuki Aotani and Hidehiko Masuhara), In Proceedings of the 10th International Conference on Aspect-Oriented Software Development (AOSD'11) (Shigeru Chiba, ed.), ACM Press, 2011.
Bibtex Entry:
@inproceedings{kamina2011aosd,
  acceptanceratio = {23% (21/92)},
  month = mar # { 21--25},
  address = {New York, NY, USA},
  publisher = {ACM Press},
  location = {Porto de Galinhas, Pernambuco, Brazil},
  isbn = {TBD},
  year = 2011,
  booktitle = {Proceedings of the 10th International Conference on
		  Aspect-Oriented Software Development (AOSD'11)},
  editor = {Shigeru Chiba},
  pdf = {aosd2011.pdf},
  author = {Tetsuo Kamina and Tomoyuki Aotani and Hidehiko Masuhara},
  title = {{EventCJ}: A Context-Oriented Programming Language with Declarative Event-based Context Transition},
  doi = {10.1145/1960275.1960305},
  pages = {253--264},
  abstract = {This paper proposes EventCJ, a context-oriented programming (COP) language that can modularly control layer activation based on user-defined events. In addition to defining context-specific behaviors by using existing COP constructs, the EventCJ programmer declares events to specify when and on which instance layer switching should happen, and layer transition rules to specify which layers should be activated/deactivated upon events. These constructs enable controlling layer activation on a per-instance basis, separately from a base program. We also demonstrate an approach to verify safety properties of layer transitions by using a model checker. With these advantages, EventCJ enables more modular descriptions of context-aware programs, especially when layer switching is triggered in many places of a program, or by activities external to the base program. We implemented a prototype EventCJ compiler with Eclipse IDE support.}
}
Powered by bibtexbrowser