Lucy-n: a n-Synchronous Extension of Lustre - Archive ouverte HAL Accéder directement au contenu
Communication Dans Un Congrès Année : 2010

Lucy-n: a n-Synchronous Extension of Lustre

Résumé

Synchronous functional languages such as Lustre or Lucid Synchrone define a restricted class of Kahn Process Networks which can be executed with no buffer. Every expression is associated to a clock indicating the instants when a value is present. A dedicated type system, the clock calculus, checks that the actual clock of a stream equals its expected clock and thus does not need to be buffered. The n-synchrony relaxes synchrony by allowing the communication through bounded buffers whose size is computed at compile-time. It is obtained by extending the clock calculus with a subtyping rule which defines buffering points. This paper presents the first implementation of the n-synchronous model inside a Lustre-like language called Lucy-n. The language extends Lustre with an explicit buffer construct whose size is automatically computed during the clock calculus. This clock calculus is defined as an inference type system and is parametrized by the clock language and the algorithm used to solve subtyping constraints. We detail here one algorithm based on the abstraction of clocks, an idea originally introduced in [APLAS08]. The paper presents a simpler, yet more precise, clock abstraction for which the main algebraic properties have been proved in Coq. Finally, we illustrate the language on various examples including a video application.
Fichier principal
Vignette du fichier
MandelPlateauPouzet-MPC-10.pdf (259.54 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00545801 , version 1 (13-12-2010)

Identifiants

  • HAL Id : hal-00545801 , version 1

Citer

Louis Mandel, Florence Plateau, Marc Pouzet. Lucy-n: a n-Synchronous Extension of Lustre. Tenth International Conference on Mathematics of Program Construction (MPC 2010), Jun 2010, Québec, Canada, France. pp.288-309. ⟨hal-00545801⟩
319 Consultations
98 Téléchargements

Partager

Gmail Facebook X LinkedIn More