KIT | KIT-Bibliothek | Impressum | Datenschutz

Versatile Event Correlation with Algebraic Effects

Bračevac, Oliver; Amin, Nada; Salvaneschi, Guido; Erdweg, Sebastian ORCID iD icon 1; Eugster, Patrick; Mezini, Mira
1 Institut für Programmstrukturen und Datenorganisation (IPD), Karlsruher Institut für Technologie (KIT)

Abstract (englisch):

We present the first language design to uniformly express variants of n-way joins over asynchronous event streams from different domains, e.g., stream-relational algebra, event processing, reactive and concurrent programming. We model asynchronous reactive programs and joins in direct style, on top of algebraic effects and handlers. Effect handlers act as modular interpreters of event notifications, enabling fine-grained control abstractions and customizable event matching. Join variants can be considered as cartesian product computations with ”degenerate” control flow, such that unnecessary tuples are not materialized a priori. Based on this computational interpretation, we decompose joins into a generic, naive enumeration procedure of the cartesian product, plus variant-specific extensions, represented in terms of user-supplied effect handlers. Our microbenchmarks validate that this extensible design avoids needless materialization. Alongside a formal semantics for joining and prototypes in Koka and multicore OCaml, we contribute a systematic comparison of the covered domains and features.


Verlagsausgabe §
DOI: 10.5445/IR/1000188584
Veröffentlicht am 22.12.2025
Originalveröffentlichung
DOI: 10.1145/3236762
Scopus
Zitationen: 15
Dimensions
Zitationen: 15
Cover der Publikation
Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Zeitschriftenaufsatz
Publikationsdatum 30.07.2018
Sprache Englisch
Identifikator ISSN: 2475-1421
KITopen-ID: 1000188584
Erschienen in Proceedings of the ACM on programming languages
Verlag Association for Computing Machinery (ACM)
Band 2
Heft ICFP
Seiten 1-31
Schlagwörter event correlation, complex event processing, joins, asynchrony, algebraic effect handlers, Koka, multicore OCaml
Nachgewiesen in Scopus
Dimensions
KIT – Die Universität in der Helmholtz-Gemeinschaft
KITopen Landing Page