44:
language for programming reactive systems. It began as a research project in the early 1980s. A formal presentation of the language can be found in the 1991 Proceedings of the IEEE. In 1993 it progressed to practical, industrial use in a commercial product as the core language of the industrial
531:
526:
536:
457:
510:
546:
500:
38:
34:
437:
541:
62:
50:
41:
20:
58:
46:
504:
497:
473:
30:
520:
432:
54:
278:
Note: The equations order doesn't matter, the order of lines
172:
Additional internal variables can be declared as follows:
156:
is the name of the single output. In this example the node
463:
In Proc. IEEE 1991 Vol. 79, No. 9. Accessed 17 March 2014.
461:
53:. It is now used for critical control software in
152:is the name of the single input of this node and
440:(another dataflow-oriented synchronous language)
8:
293:
450:
328:as the initial value of the expression
7:
160:returns the negation of its input
14:
532:Synchronous programming languages
527:Declarative programming languages
164:, which is the expected result.
73:A Lustre program is a series of
19:For the cluster filesystem, see
537:Hardware description languages
305:Returns the previous value of
1:
69:Structure of Lustre programs
286:doesn't change the result.
563:
547:Software modeling language
18:
148:is the name of the node,
77:definitions, written as:
346:
174:
79:
474:"SCADE Success Stories"
459:N. Halbwachs et al.
63:nuclear power plants
51:Esterel Technologies
42:dataflow programming
21:Lustre (file system)
16:Programming language
503:2020-11-25 at the
335:
334:
290:Special operators
554:
507:Official website
485:
484:
482:
480:
470:
464:
455:
422:
419:
416:
413:
410:
407:
404:
401:
398:
395:
392:
389:
386:
383:
380:
377:
374:
371:
368:
365:
362:
359:
356:
353:
350:
318:
299:
294:
285:
281:
274:
271:
268:
265:
262:
259:
256:
253:
250:
247:
244:
241:
238:
235:
232:
229:
226:
223:
220:
217:
214:
211:
208:
205:
202:
199:
196:
193:
190:
187:
184:
181:
178:
163:
159:
155:
151:
147:
140:
137:
134:
131:
128:
125:
122:
119:
116:
113:
110:
107:
104:
101:
98:
95:
92:
89:
86:
83:
31:formally defined
562:
561:
557:
556:
555:
553:
552:
551:
517:
516:
505:Wayback Machine
494:
489:
488:
478:
476:
472:
471:
467:
456:
452:
447:
429:
424:
423:
420:
417:
414:
411:
408:
405:
402:
399:
396:
393:
390:
387:
384:
381:
378:
375:
372:
369:
366:
363:
360:
357:
354:
351:
348:
345:
340:
316:
297:
292:
283:
279:
276:
275:
272:
269:
266:
263:
260:
257:
254:
251:
248:
245:
242:
239:
236:
233:
230:
227:
224:
221:
218:
215:
212:
209:
206:
203:
200:
197:
194:
191:
188:
185:
182:
179:
176:
170:
168:Inner variables
161:
157:
153:
149:
145:
142:
141:
138:
135:
132:
129:
126:
123:
120:
117:
114:
111:
108:
105:
102:
99:
96:
93:
90:
87:
84:
81:
71:
49:, developed by
24:
17:
12:
11:
5:
560:
558:
550:
549:
544:
542:Formal methods
539:
534:
529:
519:
518:
515:
514:
508:
493:
492:External links
490:
487:
486:
465:
449:
448:
446:
443:
442:
441:
435:
428:
425:
347:
344:
343:Edge detection
341:
339:
336:
333:
332:
322:
310:
309:
303:
291:
288:
175:
169:
166:
80:
70:
67:
15:
13:
10:
9:
6:
4:
3:
2:
559:
548:
545:
543:
540:
538:
535:
533:
530:
528:
525:
524:
522:
512:
509:
506:
502:
499:
498:Synchrone Lab
496:
495:
491:
475:
469:
466:
462:
458:
454:
451:
444:
439:
436:
434:
431:
430:
426:
342:
337:
331:
327:
323:
321:
315:
312:
311:
308:
304:
302:
296:
295:
289:
287:
173:
167:
165:
78:
76:
68:
66:
64:
60:
56:
52:
48:
43:
40:
36:
32:
28:
22:
513:product page
477:. Retrieved
468:
460:
453:
329:
325:
319:
313:
306:
300:
280:U = X and Y;
277:
171:
143:
74:
72:
45:environment
26:
25:
59:helicopters
39:synchronous
35:declarative
521:Categories
445:References
284:Z = not U;
501:Archived
427:See also
338:Examples
55:aircraft
433:Esterel
370:returns
204:returns
103:returns
479:8 June
438:SIGNAL
144:Where
61:, and
37:, and
27:Lustre
511:SCADE
400:->
397:false
317:->
47:SCADE
29:is a
481:2013
382:bool
364:bool
352:Edge
349:node
324:Set
282:and
231:bool
216:bool
198:bool
180:Nand
177:node
115:bool
97:bool
82:node
75:node
421:tel
412:pre
409:not
406:and
388:let
298:pre
273:tel
264:not
249:and
237:let
222:var
158:foo
146:foo
139:tel
130:not
121:let
85:foo
523::
385:);
219:);
118:);
65:.
57:,
33:,
483:.
418:;
415:X
403:X
394:=
391:E
379::
376:E
373:(
367:)
361::
358:X
355:(
330:q
326:p
320:q
314:p
307:p
301:p
270:;
267:U
261:=
258:Z
255:;
252:Y
246:X
243:=
240:U
234:;
228::
225:U
213::
210:Z
207:(
201:)
195::
192:Y
189:,
186:X
183:(
162:a
154:b
150:a
136:;
133:a
127:=
124:b
112::
109:b
106:(
100:)
94::
91:a
88:(
23:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.