LUSTRE

(A French acronym for Synchronous real-time Lucid). Real-time dataflow language for synchronous systems, especially automatic control and signal processing. A Lucid subset, plus timing operators and user-defined clocks.

Designed for automatic control applications. It is based on the idea that automatic control engineers use to analyse, and specify their systems in terms of functions over sequences (sampled signals). It thus seems both safe and cost effective to try to compile directly those descriptions into executable code. A lot of work has been done, so as to get efficient compilation, and also in formal verification. The language has been used in nuclear plant control, and will be used in aircraft control.

["Outline of a Real-Time Data-Flow Language", J.-L. Bergerand et al, Proc IEE-CS Real Time Systems Symp, San Diego, IEEE Dec 1985, pp. 33-42].

["LUSTRE: A Declarative Language for Programming Synchronous Systems", P. Caspi et al, Conf Rec 14th Ann ACM Symp on Princ Prog Langs, 1987].