Declarative languages: Lustre and Signal
Reactive systems belong to a field in which many users come from control science or electronics rather than from computer science. It is therefore appealing to provide these users with description tools that are similar to the traditional tools used in control theory: these traditional tools often consist, at a higher level, of equational formalisms (differential or finite-difference equations, Boolean equations, etc...), and at a lower level, of various graphic formalisms to describe operator networks (block diagrams, analog schémas, switch or gate diagrams, etc...). All these formalisms belong to the “data-flow” model, which is well known in computer science [Kah74, Gra82]. In this model, a system is a network of interconnected operators, running in parallel and activated by input arrivals (cf. Figure 4.1). This model was initially proposed for general programming. However, it has not enjoyed much success in this context, on the one hand because it goes against uses that are firmly rooted in users’mind, and on the other hand because no reasonably efficient implementations have been proposed for data-flow languages.
KeywordsParallel Composition Traditional Tool Boolean Equation Declarative Language Imperative Language
Unable to display preview. Download preview PDF.