1 Introduction
Frameworks such as the Robot Operating System (ROS) [1] and MQTT [2, 3] are widely used in safety-critical, concurrent, and often distributed cyber-physical applications such as autonomous driving and industrial automation [4–6]. These frameworks are convenient, modular, and their underlying asynchronous coordination mechanism, publish-and-subscribe (pub-sub), is easy to use and not prone to deadlocks. This paper empirically shows that pub-sub is ill-suited for such applications and offers an alternative, based on the open-source coordination language LINGUA FRANCA (LF) [7], which is underpinned by the reactor model [8]. Reactors borrow the best semantic features of established models of computation, such as actors [9], logical execution time (LET) [10, 11], synchronous reactive languages [12], and discrete event systems [13] such as DEVS [14] and SystemC [15]. LF is polyglot in the sense that it mixes LF syntax with target code like C or Python. LF furthers the state of the art by making time a first-class citizen in the programming model and by enabling deterministic interactions between multiple physical and logical timelines [7].