Esterel (langage)

Esterel (langage)

Esterel est le nom d'un langage de programmation conçu dans les années 1980 par un groupe dirigé par Gérard Berry.

Ce langage est dit synchrone et réactif. Il est impératif et permet l'expression simple du parallélisme et de la préemption. Il est de ce fait bien adapté à la modélisation des systèmes à prépondérance contrôlée.

En tant que langage appartenant à la classe des systèmes informatiques réactifs :

  • le programme ne se termine pas, il est cyclique ;
  • il possède une grande vitesse de réaction en même temps qu'une connaissance de l'environnement exacte ;
  • le parallélisme lui permet de gérer plusieurs capteurs et/ou incidents simultanément ;
  • ses processus peuvent être interrompus ou stoppés.

Ce langage peut modéliser de nombreux systèmes et milieux : logiciels, matériels, contrôle de flux etc.

Sommaire

Syntaxe/comportement du langage

Un signal S peut être activé ou désactivé. On l'active via l'instruction emit S. On change sa valeur (par exemple une valeur du type entier) via l'instruction emit S(valeur).

Pour illustrer l'instantanéité de l'activation des signaux, les instructions emit O; emit O1; emit O2; aboutissent à l'activation instantanée et simultanée en une seule itération des trois signaux O, O1, et O2. Une autre illustration : le symbole || signifie la parallélité des instructions qu'il sépare.

Un exemple de module :

  module ABRO:
  input A, B, R;
  output O;
  loop
     [ await A || await B ];
     emit O
  each R
  end module

Un exemple d'utilisation du module précédent dans un autre module :

  module ABCRO:
  input A, B, C, R;
  output O;
  signal AB in
     run ABRO [ signal AB / O ]
  ||
     run ABRO [ signal AB / A, C / B ]
  end module

AB / O signifie que le O de la sous-fonction ABRO est nommé AB dans la fonction ABCRO.

Le langage est encore en développement, sans véritable standard établi. Il existe plusieurs compilateurs Esterel qui permettent de générer du code C, VHDL ou Verilog. La société Esterel Technologies a engagé un processus de normalisation de la version 7 du langage à l'IEEE en 2005. Le manuel de référence[1] présenté pour la normalisation est disponible.

Il en existe une version orientée objet : Esterel ++, conçue par Dassault Aviation. Différents formalismes graphiques (Syncharts, UML) sont proposés.

Notes

Voir aussi

Autres langages synchrones

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Esterel (langage) de Wikipédia en français (auteurs)

Игры ⚽ Нужен реферат?

Regardez d'autres dictionnaires:

  • Esterel (Langage) — Esterel est le nom d un langage de programmation apparu dans les années 1980. Son « père » est Gérard Berry. Ce langage est dit synchrone et réactif. Il est impératif et permet l expression simple du parallélisme, de la préemption. Il… …   Wikipédia en Français

  • Langage De Programmation — Un langage de programmation est un langage informatique, permettant à un être humain d écrire un code source qui sera analysé par une machine, généralement un ordinateur. Le code source subit ensuite une transformation ou une évaluation dans une… …   Wikipédia en Français

  • Langage Intermédiaire — En informatique, un langage intermédiaire est le langage d une machine abstraite conçu pour l analyse d un programme informatique. Le terme vient de son utilisation dans les compilateurs, où un compilateur transcrit d abord le code source d un… …   Wikipédia en Français

  • Langage intermediaire — Langage intermédiaire En informatique, un langage intermédiaire est le langage d une machine abstraite conçu pour l analyse d un programme informatique. Le terme vient de son utilisation dans les compilateurs, où un compilateur transcrit d abord… …   Wikipédia en Français

  • Langage intermédaire — Langage intermédiaire En informatique, un langage intermédiaire est le langage d une machine abstraite conçu pour l analyse d un programme informatique. Le terme vient de son utilisation dans les compilateurs, où un compilateur transcrit d abord… …   Wikipédia en Français

  • Langage de programmation — Programme écrit en Perl. Programm …   Wikipédia en Français

  • Langage intermédiaire — En informatique, un langage intermédiaire (parfois abrégé en IL, de l anglais Intermediate Language) est le langage d une machine abstraite conçu pour l analyse d un programme informatique. Le terme vient de son utilisation dans les compilateurs …   Wikipédia en Français

  • Esterel — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Le massif de l Esterel est un massif montagneux cristallin situé en Provence. En informatique, Esterel est un langage de programmation. L Escadron de… …   Wikipédia en Français

  • Lustre (langage) — Pour les articles homonymes, voir lustre. Lustre est un langage de programmation synchrone, déclaratif, et par flots. Il possède une définition formelle, et est utilisé pour la programmation des systèmes réactifs. Son développement a commencé au… …   Wikipédia en Français

  • Gérard Berry — Pour les articles homonymes, voir Berry (homonymie). Gérard Berry (2009) brandissant une calculatrice Curta Gérard Berry, né le 2 …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”