Toward a Lingua Franca for Deterministic Concurrent Systems

Author(s): Marten Lohstroh, Christian Menard, Soroush Bateni, and Edward A. Lee

Citation
Marten Lohstroh, Christian Menard, Soroush Bateni, and Edward A. Lee. "Toward a Lingua Franca for Deterministic Concurrent Systems". ACM Transactions on Embedded Computing Systems (TECS), 20(4), May 2021.

Abstract
Many 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.

Electronic Downloads

Citation Formats

  • HTML
                    
    Marten Lohstroh, Christian Menard, Soroush Bateni, and Edward A. Lee.
    "<a href="https://www.icyphy.org/publications/2021_LohstrohEtAl/">Toward a Lingua Franca for Deterministic Concurrent Systems</a>".
    <i>ACM Transactions on Embedded Computing Systems (TECS)</i>, 20(4), May 2021.
                    
                    
  • Plain Text
                    
    Marten Lohstroh, Christian Menard, Soroush Bateni, and Edward A. Lee.
    "Toward a Lingua Franca for Deterministic Concurrent Systems".
    ACM Transactions on Embedded Computing Systems (TECS), 20(4), May 2021.
                    
                    
  • BibTeX
                        
    @article{LohstrohEtAl:21:LinguaFranca,
    	author = {Marten Lohstroh, Christian Menard, Soroush Bateni, and Edward A. Lee},
    	title = {Toward a Lingua Franca for Deterministic Concurrent Systems},
    journal = {ACM Transactions on Embedded Computing Systems (TECS)},
    volume = {20},
    number = {4},
    month = {May},
    year = {2021},
    doi = {10.1145/3448128},
    abstract = {Many 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.}, URL = {https://www.icyphy.org/publications/2021_LohstrohEtAl/} }