Transparent Synchronous Dataflow

10/21/2019
by   Steven W. T. Cheung, et al.
0

There are several functional approaches to dataflow programming, produced by varying the level of abstraction of the language. The level of abstraction has immediate impact on the trade-offs between effectiveness (how easy it is to write correct programs) and efficiency (time and space costs of execution) that the language makes. In this paper we present a language for dataflow programming which operates at higher level of abstraction, by making events and the switching infrastructure transparent. To solve the problem of potentially infinite computation in cyclic dataflow networks we adopt a synchronous mode of propagation, leading to a novel language design which we call transparent synchronous dataflow (TSD). This language is semantically defined using a graph-rewriting abstract machine, which gives a cost-accurate execution model. Using it, we prove three main results: safety of execution, implementation-independent efficiency, and deterministic execution for concurrent update. We also provide a semi-naive concrete implementation as an OCaml PPX extension which we use to compare it with similar languages via benchmarks.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/11/2017

A Semantics Comparison Workbench for a Concurrent, Asynchronous, Distributed Programming Language

A number of high-level languages and libraries have been proposed that o...
research
07/17/2017

FabULous Interoperability for ML and a Linear Language

Instead of a monolithic programming language trying to cover all feature...
research
10/04/2019

Trading off Complexity for Expressiveness in Programming Languages: Visions and Preliminary Experiences

When programming resource-scarce embedded smart devices, the designer of...
research
07/24/2019

A Case for Stale Synchronous Distributed Model for Declarative Recursive Computation

A large class of traditional graph and data mining algorithms can be con...
research
07/25/2019

Spacetime Programming: A Synchronous Language for Composable Search Strategies

Search strategies are crucial to efficiently solve constraint satisfacti...
research
01/31/2020

Formal Approach for the Verification of Onboard Autonomous Functions in Observation Satellites

We propose a new approach for modelling the functional behaviour of an E...
research
06/08/2020

Synchronous Robotic Framework

We present a synchronous robotic testbed called SyROF that allows fast i...

Please sign up or login with your details

Forgot password? Click here to reset