EScala: modular event-driven object interactions in scala
EScala: modular event-driven object interactions in scala
复制标题
EScala:scala 中模块化事件驱动的对象交互
DOI:
--
复制
发表时间:
2011
期刊:
影响因子:
--
通讯作者:
Jacques Noyé
中科院分区:
文献类型:
--
作者:
Vaidas Gasiunas;Lucas Satabin;M. Mezini;Angel Núñez;Jacques Noyé
Event-driven programming style in OO languages based on imperatively triggered events does not support separate and more declarative event definitions by composition or transformation of other events. AO language mechanisms for defining events as declarative queries over implicitly available low-level events seem good candidates to approach these problems. However, being designed for modularizing mostly globally scoped, crosscutting concerns, AO mechanisms deliberately break with the OO design and modular reasoning style and are thus inappropriate for addressing modularity concerns related to event-based interactions in OO designs.
The contribution of this paper is a language design that combines imperatively triggered events with AO-like mechanisms that are specifically designed to address modularity issues in event-driven object-oriented designs. In particular, they seamlessly integrate with OO-style encapsulation, late binding, and modular reasoning. We present an efficient and type-safe implementation of the proposed design as an extension to Scala.