• Corpus ID: 17639322

The Synchronous Data Flow Programming Language

  title={The Synchronous Data Flow Programming Language},
  author={Paul Caspi and Pascal Raymond and Daniel Pilaud},
This paper describes the language LUSTRE which is a data flow synchronous language, designed for programming reactive systems-uch as automatic control and monitoring sy s t emsas well as for describing hardware. The data flow aspect of LUSTRE makes it very close to usual description tools in these domains (blockdiagrams, networks of operators, dynamical sample-systems, etc.), and its synchronous interpretation makes it well suited for handling time in programs. Moreover, this synchronous… 

Figures and Tables from this paper

Implementation of Synchronous Programs
This paper formalizes the notion of “execution machine” for synchronous code, and a generic architecture for centralized execution machines is introduced.
INSTITUT FÜR INFORMATIK A Sequentially Constructive Circuit Semantics for Esterel
This extended SSA transformation expands the class of programs that can be compiled by existing Esterel compilers without causality problems, and offers a new, efficient solution for the well-studied signal reincarnation problem.
Reliable operating modes for distributed embedded systems
This paper will demonstrate how a reliable transition between operating modes, even for a distributed system, can be achieved and showcase an approach for code generation for entire systems.
Language and Compiler Design for Streaming Applications
The StreamIt language provides novel high-level representations to improve programmer productivity and program robustness within the streaming domain and the StreamIt compiler aims to improve the performance of streaming applications via stream-specific analysis and optimizations.
Phased Computation Graphs in the Polyhedral Model
This work presents a translation scheme that allows a broad class of dataflow graphs to be considered under the optimization framework of the polyhedral model, and proposes ways in which the poly cathedral model can offer new approaches to classic problems of the DSP community.
Web Services Composition: Mashups Driven Orchestration Definition
This paper explores in this paper how a WSOA can be defined as a data-flow in a mashup-like approach, where Model Driven Engineering techniques enable a clever composition of data-flows and the generation of control-flows based architecture.
Adaptive virtual organisms: A compositional model for complex hardware-software binding
The introduction of the concept of "virtual organism" (VO), to populate the intermediary level between rigid, slightly reconfigurable, hardware agents and abstract, intelligent, adaptive software agents, and the quantitative results show reconfiguring structures are better suited than fixed structures in dynamically changing environments.
Methodologies to Bring Embedded Systems to Non-EE Students
This paper explores some graphical methodologies available today that provide a higher level of abstraction that can help professors teach embedded systems to non-EE majors.
A Literature Review of Spreadsheet Technology
This literature review presents an overview of research on spreadsheet technology, its challenges and its solutions, and attempts to identify why software developers generally frown upon spreadsheets and how spreadsheet research can help alter this view.
Data Locality on Manycore Architectures. (Optimisation de la Localité des Données sur Architectures Manycœurs)
Les premiers travaux sur une nouvelle technique d'optimisation, le pavage generalise qui a l'avantage d'utiliser un modele abstrait pour the reutilisation des donnees et d'etre en meme temps utilisable dans un grand nombre of contextes.


Using the Declarative Language LUSTRE for Circuit Verification
It is explained how the language LUSTRE can be used to describe synchronous digital circuits at different levels of abstraction and how the associated verification tool LESAR automatically proves the correctness of a circuit.
Specifying, Programming and Verifying Real-Time Systems Using a Synchronous Declarative Language
It is shown that the finite automaton produced by the Lustre compiler may be used for verifying many logical properties, by model checking, in the real-time system Lustre.
The Semantics of a Simple Language for Parallel Programming
  • G. Kahn
  • Computer Science
    IFIP Congress
  • 1974
A simple language for parallel programming is described and its mathematical properties are studied to make a case for more formal languages for systems programming and the design of operating systems.
An experience in proving regular networks of processes by modular model checking
This paper presents a complete example of the use of the synchronous declarative language LUSTRE for the specification, description and verification of a resource arbiter, which is a regular network
The VAL Language: Description and Analysis
Analysis of the language shows that VAL meets the critical needs for a data flow environment, and encourages programmers to think in terms of general concurrency, enhances readability, and possesses a structure amenable to verification techniques.
LUCID: The data flow programming language
The primary objective of this book is to prove that Dataflow is a real alternative to sequential/imperative computing, and that dataflow algorithms can be expressed naturally and concisely in LUCID.
Functional specification of time-sensitive communicating systems
A formal model and a logical framework for the functional specification of time-sensitive communicating systems and their interacting components are outlined and a rational is given for the chosen concepts of thefunctional specification technique.
Reasoning in Interval Temporal Logic
This paper discusses interval temporal logic (ITL), a formalism that augments standard predicate logic with operators for time-dependent concepts and compares ITL with the logic-based programming languages Lucid and Prolog.
A really temporal logic
TPTL is demonstrated to be both a natural specification language and a suitable formalism for verification and synthesis and several generalizations of TPTL are shown to be highly undecidable.
Safety analysis of timing properties in real-time systems
The authors formalize the safety analysis of timing properties in real-time systems. The analysis is based on a formal logic, RTL (real-time logic), which is especially suitable for reasoning about