Des promesses, des actions, par flots, en OCaml

Résumé : Nous nous intéressons aux traitements de flux audio synchrones et aux contrôles de ces traitements par des flux de commandes asynchrones : un exemple archétypal de problème de programmation globalement asynchrone et localement synchrone (GALS). Pour faire cela, un modèle qui s'impose tout à la fois par son efficacité et son élégance se situe à la croisée de plusieurs concepts clés de la programmation fonctionnelle : les actions monadiques, les promesses, et les flots récursifs d'actions ou de promesses. Suite à une expérimentation de cette modélisation en Haskell, l'objet de cet article est d'en faire une expérimentation en OCaml. De façon quelque peu inattendue, les deux approches se complètent et nous conduisent finalement à une axiomatisation originale de la notion de promesse. De plus, étendu aux flots récursifs d'actions, il apparaît que les promesses de flots d'actions peuvent être vue comme des flots de promesses. Une mise en oeuvre de ces concepts est proposée en s'appuyant sur les extensions d'OCaml par threads Posix ou par threads légers (lwt).
Complete list of metadatas

Cited literature [14 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-02389651
Contributor : David Janin <>
Submitted on : Monday, December 2, 2019 - 3:56:11 PM
Last modification on : Tuesday, December 3, 2019 - 1:37:57 AM

File

full.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-02389651, version 1

Collections

Citation

Simon Archipoff, David Janin, Bernard Serpette. Des promesses, des actions, par flots, en OCaml. 2019. ⟨hal-02389651⟩

Share

Metrics

Record views

21

Files downloads

7