ReactiveML, un langage fonctionnel pour la programmation réactive

e modele reactif synchrone de Boussinot. Ce modele reprend des principes du synchrone tel s que la composition parallele deterministe et la communication par diffusion. Il les comb ine a des mecanismes de creation dynamique de processus. Cet article presente le langage, so n systeme de type et sa semantique. ABSTRACT.The programming of reactive systems such as simulators of dy namic systems or video games is a difficult task. We introduce theREACTIVEML language as an alternative to classical techniques such as event loops or thread-based programming . REACTIVEML is an extension of OCaml founded on the synchronous reactive model of Boussi not. This model combines the synchronous model which provides parallel composition andinstantaneous communications with dynamic creation of processes. This paper presents thelanguage, its type system and its formal semantics. MOTS-CLES :programmation reactive synchrone, programmation fonctio nnelle, concurrence, ty- page, semantique formelle.

[1]  Louis Mandel,et al.  Simulation of Mobile Ad hoc Network Protocols in ReactiveML , 2005 .

[2]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[3]  Benjamin C. Pierce,et al.  Types and programming languages: the next generation , 2003, 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings..

[4]  Marc Pouzet,et al.  ReactiveML: a reactive extension to ML , 2005, PPDP.

[5]  Gérard Berry,et al.  Preemption in Concurrent Systems , 1993, FSTTCS.

[6]  Frédéric Boussinot,et al.  The SugarCubes tool box: a reactive Java framework , 1998 .

[7]  Gérard Boudol,et al.  ULM: A Core Programming Model for Global Computing: (Extended Abstract) , 2004, ESOP.

[8]  Andrew K. Wright Simple imperative polymorphism , 1995, LISP Symb. Comput..

[9]  Amir Pnueli,et al.  On the Development of Reactive Systems , 1989, Logics and Models of Concurrent Systems.

[10]  Raul Acosta-Bermejo Rejo Langage d'Objects Réactifs et d'Agents , 2003 .

[11]  Stephen A. Edwards,et al.  The Synchronous Languages Twelve Years Later , 1997 .

[12]  Ilaria Castellani,et al.  Reactive Concurrent Programming Revisited , 2005, APC 25.

[13]  Louis Mandel,et al.  Conception, sémantique et implantation de réactiveML : un langage à la ML pour la programmation réactive , 2006 .

[14]  Denyse Baillargeon,et al.  Bibliographie , 1929 .

[15]  Robin Milner,et al.  A Theory of Type Polymorphism in Programming , 1978, J. Comput. Syst. Sci..

[16]  Devang Shah,et al.  Programming with threads , 1996 .

[17]  Paul Hudak,et al.  Functional reactive programming from first principles , 2000, PLDI '00.

[18]  Florence Maraninchi,et al.  GLONEMO: global and accurate formal models for the analysis of ad-hoc sensor networks , 2006, InterSense '06.

[19]  Robert de Simone,et al.  The SL Synchronous Language , 1996, IEEE Trans. Software Eng..

[20]  Paul Hudak,et al.  Functional reactive animation , 1997, ICFP '97.

[21]  Eric A. Brewer,et al.  USENIX Association Proceedings of HotOS IX : The 9 th Workshop on Hot Topics in Operating Systems , 2003 .

[22]  Stephen A. Edwards,et al.  The synchronous languages 12 years later , 2003, Proc. IEEE.

[23]  Riccardo Pucella,et al.  Reactive programming in Standard ML , 1998, Proceedings of the 1998 International Conference on Computer Languages (Cat. No.98CB36225).

[24]  François Monin,et al.  Principles and Practice of Declarative Programming , 1999, Lecture Notes in Computer Science.

[25]  Frédéric Boussinot,et al.  Reactive C: An extension of C to program reactive systems , 1991, Softw. Pract. Exp..

[26]  Manuel Serrano,et al.  Scheme fair threads , 2004, PPDP '04.

[27]  Pierre Falzon,et al.  Institut national de recherche en informatique et en automatique , 1992 .

[28]  Frédéric Boussinot,et al.  The Junior Reactive Kernel , 1999 .