EScala: Modular Event-Driven Object Interactions in Scala

Vaidas Gasiūnas 1 Lucas Satabin 1 Mira Mezini 1 Angel Núñez 2, 3 Jacques Noyé 2, 3
3 ASCOLA - Aspect and composition languages
Inria Rennes – Bretagne Atlantique , Département informatique - EMN, LINA - Laboratoire d'Informatique de Nantes Atlantique
Abstract : 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.
Complete list of metadatas

https://hal.inria.fr/inria-00559183
Contributor : Noyé Jacques <>
Submitted on : Tuesday, January 25, 2011 - 9:17:15 AM
Last modification on : Friday, June 22, 2018 - 9:27:22 AM

Identifiers

Citation

Vaidas Gasiūnas, Lucas Satabin, Mira Mezini, Angel Núñez, Jacques Noyé. EScala: Modular Event-Driven Object Interactions in Scala. 10th International Conference on Aspect-Oriented Software Development (AOSD 2011), Mar 2011, Porto de Galinhas, Brazil. ⟨10.1145/1960275.1960303⟩. ⟨inria-00559183⟩

Share

Metrics

Record views

874