Type-safe, Polyvariadic Event Correlation
Oliver Bra\v{c}evac, Guido Salvaneschi, Sebastian Erdweg, Mira Mezini

TL;DR
This paper introduces PolyJoin, a novel, type-safe, and extensible approach for embedding fully polyvariadic event patterns into statically-typed programming languages, enabling safer and more flexible event correlation.
Contribution
It presents PolyJoin, a new method for embedding complex event patterns with polymorphic semantics using a tagless final encoding in host languages, addressing limitations of previous approaches.
Findings
PolyJoin is practical and implemented in OCaml.
It ensures type safety and extensibility for event pattern embedding.
The approach supports arbitrary n-variable event patterns without code generation.
Abstract
The pivotal role that event correlation technology plays in todays applications has lead to the emergence of different families of event correlation approaches with a multitude of specialized correlation semantics, including computation models that support the composition and extension of different semantics. However, type-safe embeddings of extensible and composable event patterns into statically-typed general-purpose programming languages have not been systematically explored so far. Event correlation technology has often adopted well-known and intuitive notations from database queries, for which approaches to type-safe embedding do exist. However, we argue in the paper that these approaches, which are essentially descendants of the work on monadic comprehensions, are not well-suited for event correlations and, thus, cannot without further ado be reused/re-purposed for embedding event…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Database Systems and Queries · Logic, programming, and type systems · Distributed systems and fault tolerance
