Programmation synchrone

Cet article est une ébauche concernant l’informatique.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

En informatique, la programmation synchrone est un paradigme de programmation conçu pour le domaine des systèmes réactifs embarqués. Dans ce domaine, les programmes sont en constante interaction avec leur environnement (ce qui les différencie des programmes transformationnels comme les compilateurs) et doivent satisfaire des contraintes au niveau du temps de réponse (ce qui les différencie des programmes interactifs comme les navigateurs web) ou des ressources consommées. La programmation synchrone a pour objectif de permettre le développement de programmes qui offrent de telles garanties et se comportent de façon déterministe.

Exemples de langages

  • Argos[1]
  • Atom, un langage dédié dialecte de Haskell pour les systèmes embarqués avec contraintes temps réel fortes
  • Averest
  • Blech
  • ChucK, un langage de programmation destiné à la création sonore
  • Esterel[2]
  • LabVIEW
  • LEA
  • Lustre, utilisé entre autres dans l'aéronautique et le nucléaire
  • PLEXIL
  • SIGNAL, un langage synchrone orienté vers les flux de données à horloges multiples
  • SOL
  • SyncCharts

Références

  1. Florence Maraninchi et Yann Rémond. Argos: an Automaton-Based Synchronous Language. Computer Languages, Oxford, Elsevier, 2001, 27 (1-3), pp.61-92. DOI: 10.1016/S0096-0551(01)00016-9. https://hal.archives-ouvertes.fr/hal-00273055/file/ARGOS-CL-perso.pdf.
  2. G. Berry et G. Gonthier. The synchronous programming language ESTEREL: Design, semantics, implementation. Science of Computer Programming, 19(2), 1992.
  • icône décorative Portail de la programmation informatique