Le langage Signal et ses applications

Conçu et développé à la même période que les autres langages synchrones, Signal, avec le recul, apparaît comme étant à part dans le paysage. Il est dédié aux systèmes dits « ouverts » et se focalise sur la synchronisation et les horloges. La synchronisation d’un programme est synthétisée et non pas vérifiée. L’exposé expliquera les principes de cette approche et, en premier, le calcul d'horloges et de causalité qui permet de dégager une notion d'interface temporelle utile pour la compilation modulaire. Au-delà de la présentation du langage, l’objectif est de montrer l'intérêt de ces principes. L’exposé expliquera comment exploiter les avancées récentes des techniques de preuve pour augmenter la puissance du calcul d'horloges. Et, surtout, il expliquera comment une extension du calcul de causalité permet de traiter des programmes incluant des contraintes numériques, extension utile lorsque l'on s'intéresse à la modélisation de systèmes physiques.