Synchronous programming language
Appearance
A synchronous programming language is a computer programming language optimized for programming reactive systems, systems that are often interrupted and must respond quickly. Many such systems are also called real-time systems, and are found often in embedded uses. The term 'reactive' is chosen to avoid ambiguities that occur sometimes when using the term 'real-time'. They are of growing importance.
Synchronous programming (also synchronous reactive programming or SRP) is a computer programming paradigm supported by synchronous programming languages.
Implementations
The ESTEREL language is an example of a synchronous programming language.[1]
Synchronous languages
- Argos
- Atom (a DSL in Haskell for hard realtime embedded programming)
- Averest
- ChucK (a synchronous reactive programming language for audio)
- Esterel
- LabVIEW
- LEA
- Lustre
- PLEXIL
- SIGNAL (a dataflow-oriented synchronous language enabling multi-clock specifications)
- SOL
- SyncCharts
External links
- The Synchronous group
- The SIGNAL programming language
- Unification of Synchronous and Asynchronous Models for Parallel Programming Languages -- Proposes parallel languages based on C, lets programmers specify and manage parallelism on a broad range of computer architectures.
References
- Nicolas Halbwachs. "Synchronous programming of reactive systems". Kluwer Academic Publishers, 1993., http://www-verimag.imag.fr/~halbwach/newbook.pdf
- ^ G. Berry and G. Gonthier. The synchronous programming language ESTEREL: Design, semantics, implementation. Science of Computer Programming, 19(2), 1992.