Title
Toward a Lingua Franca for Deterministic Concurrent Systems
Abstract
AbstractMany programming languages and programming frameworks focus on parallel and distributed computing. Several frameworks are based on actors, which provide a more disciplined model for concurrency than threads. The interactions between actors, however, if not constrained, admit nondeterminism. As a consequence, actor programs may exhibit unintended behaviors and are less amenable to rigorous testing. We show that nondeterminism can be handled in a number of ways, surveying dataflow dialects, process networks, synchronous-reactive models, and discrete-event models. These existing approaches, however, tend to require centralized control, pose challenges to modular system design, or introduce a single point of failure. We describe “reactors,” a new coordination model that combines ideas from several of these approaches to enable determinism while preserving much of the style of actors. Reactors promote modularity and allow for distributed execution. By using a logical model of time that can be associated with physical time, reactors also provide control over timing. Reactors also expose parallelism that can be exploited on multicore machines and in distributed configurations without compromising determinacy.
Year
DOI
Venue
2021
10.1145/3448128
ACM Transactions on Embedded Computing Systems
Keywords
DocType
Volume
Polyglot, coordination language, concurrency, determinism
Journal
20
Issue
ISSN
Citations 
4
1539-9087
1
PageRank 
References 
Authors
0.36
0
4
Name
Order
Citations
PageRank
Marten Lohstroh1376.71
Christian Menard242.11
Soroush Bateni3132.19
Edward A. Lee462.96