Programmation réactive en OCaml
La programmation réactive permet d'écrire des programmes sous forme d'un ensemble de processus qui s'exécutent de manière synchronisée et communiquent par diffusion de signaux. Ce paradigme peut être fourni par des langages spécialisés (parfois basés sur des langages "classiques") ou par des bibliothèques. Le langage ReactiveML est un tel langage réactif basé sur OCaml. Nous décrivons ici une bibliothèque OCaml fournissant les constructions réactives de ReactiveML pour le langage OCaml lui-même. Les processus devront pour cela être rédigés en style trampoline. Des exemples montrent que le style obtenu est raisonnable et que les performances sont au moins équivalentes.
Reactive programming allows to write programs as a set of processes executing synchronously and communicating by signal broadcasting. This paradigm can be provided by specialized languages (sometimes based on "classic" languages) or by a library. ReactiveML is such a language based on OCaml. We describe an OCaml library that provides ReactiveML reactive constructs for the OCaml language. Processes must be written in trampolined style. Examples show the resulting style to be acceptable, and performances at least as good.
Christophe DELEUZE
programmation réactive, ReactiveML, langage fonctionnel, OCaml, style trampoline, bibliothèque.
reactive programming, ReactiveML, functionnal language, OCaml, trampolined style, library.
Français
|