1991
DOI: 10.1109/5.97300
|View full text |Cite
|
Sign up to set email alerts
|

The synchronous data flow programming language LUSTRE

Abstract: This paper describes the language LUSTRE which is a data flow synchronous language, designed for programming reactive systems-uch as automatic control and monitoring s y s t e m s a s 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 interpretation al… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
702
0
12

Year Published

1999
1999
2015
2015

Publication Types

Select...
7
1
1

Relationship

0
9

Authors

Journals

citations
Cited by 1,251 publications
(714 citation statements)
references
References 14 publications
0
702
0
12
Order By: Relevance
“…This structure mirrors synchronous digital circuitry: gates and wires do a finite amount of computation each clock cycle, but the system is assumed to run forever. The Lustre [12] synchronous language suggested this approach; we adapted it for a Haskell environment as presented by Hinze [13]. An advantage of our approach is that it does not require any new semantics: infinite streams were already lurking in our IR via lazy evaluation, which Haskell provides for us automatically.…”
Section: Sequential Ir: Streams For Timementioning
confidence: 99%
“…This structure mirrors synchronous digital circuitry: gates and wires do a finite amount of computation each clock cycle, but the system is assumed to run forever. The Lustre [12] synchronous language suggested this approach; we adapted it for a Haskell environment as presented by Hinze [13]. An advantage of our approach is that it does not require any new semantics: infinite streams were already lurking in our IR via lazy evaluation, which Haskell provides for us automatically.…”
Section: Sequential Ir: Streams For Timementioning
confidence: 99%
“…This approach significantly differs from the one adopted for other synchronous languages such as Lustre or Signal which only evaluate parts of an overall dataflow graph depending on the status the system inputs ( [12], [11], [10]). …”
Section: General Descriptionmentioning
confidence: 99%
“…The compiler takes care of translating the synchronous system into sequential (asynchronous) code while preserving its semantic [2]- [3]. Synchronous programming languages like ESTEREL [4], LUSTRE [5], SIGNAL [6], or SIMULINK are modular and compositional. This is essential for the programming of large control systems.…”
Section: Introductionmentioning
confidence: 99%