Zélus: A Synchronous Language with ODEs - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2013

Zélus: A Synchronous Language with ODEs


Zélus is a new programming language for modeling systems that mix discrete logical time and continuous time behaviors. From a user's perspective, its main originality is to extend an existing Lustre-like synchronous language with Ordinary Differential Equations (ODEs). The extension is conservative: any synchronous program expressed as data-flow equations and hierarchical automata can be composed arbitrarily with ODEs in the same source code. A dedicated type system and causality analysis ensure that all discrete changes are aligned with zero-crossing events so that no side effects or discontinuities occur during integration. Programs are statically scheduled and translated into sequential code that, by construction, runs in bounded time and space. Compilation is effected by source-to-source translation into a small synchronous subset which is processed by a standard synchronous compiler architecture. The resultant code is paired with an off-the-shelf numeric solver. We show that it is possible to build a modeler for explicit hybrid systems à la Simulink/Stateflow on top of an existing synchronous language, using it both as a semantic basis and as a target for code generation.
Fichier principal
Vignette du fichier
paper.pdf (184.3 Ko) Télécharger le fichier
poster.pdf (134.42 Ko) Télécharger le fichier
slides.pdf (413.28 Ko) Télécharger le fichier
Origin Files produced by the author(s)
Format Other
Format Other

Dates and versions

hal-00909029 , version 1 (25-11-2013)



Timothy Bourke, Marc Pouzet. Zélus: A Synchronous Language with ODEs. HSCC - 16th International Conference on Hybrid systems: computation and control, Calin Belta and Franjo Ivančić, Apr 2013, Philadelphia, United States. pp.113-118, ⟨10.1145/2461328.2461348⟩. ⟨hal-00909029⟩
282 View
633 Download



Gmail Mastodon Facebook X LinkedIn More