Declarative Events for Object-Oriented Programming

Vaidas Gasiūnas, Lucas Satabin, Mira Mezini, Angel Núñez, Jacques Noyé · 2010

In object-oriented designs inversion of control is achieved by an event-driven programming style based on impera-tively triggered events. An alternative approach can be found in aspect-oriented programming, which defines events as declarative queries over implicitly available events. This helps to localize definition of events and avoid preplanning, but lacks a clean integration with object-oriented features and principles. The contribution of this paper is a concept of object-oriented events that combines imperative, declarative and implicit events and provides their seamless integration with object-oriented features, preserving encapsulation and modular reasoning. We present an efficient and type-safe implementation of the concept as an extension to the SCALA language. 1.

Read the paper · More papers on PaperTik