Reactive Concurrent Programming Revisited

In this note we revisit the so-called reactive programming style, which evolves from the synchronous programming model of the Esterel language by weakening the assumption that the absence of an event can be detected instantaneously. We review some research directions that have been explored since the emergence of the reactive model ten years ago. We shall also outline some questions that remain to be investigated.

[1]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[2]  Stéphane Epardaud,et al.  Mobile Reactive Programming in ULM , 2004 .

[3]  Gérard Berry,et al.  The Esterel Synchronous Programming Language: Design, Semantics, Implementation , 1992, Sci. Comput. Program..

[4]  Silvano Dal-Zilio,et al.  Resource control for synchronous cooperative threads , 2006, Theor. Comput. Sci..

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

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

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

[8]  Roberto M. Amadio,et al.  Feasible Reactivity for Synchronous Cooperative Threads , 2006, EXPRESS.

[9]  Guillaume Bonfante,et al.  On Lexicographic Termination Ordering with Space Bound Certifications , 2001, Ershov Memorial Conference.

[10]  Roberto M. Amadio Synthesis of max-plus quasi-interpretations , 2005, Fundam. Informaticae.

[11]  John K. Ousterhout,et al.  Why Threads Are A Bad Idea (for most purposes) , 2003 .

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

[13]  Marc Pouzet,et al.  Synchronous Kahn networks , 1996, ICFP '96.

[14]  M. W. Shields An Introduction to Automata Theory , 1988 .

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

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

[17]  Frédéric Boussinot,et al.  FairThreads: mixing cooperative and preemptive threads in C , 2006, Concurr. Comput. Pract. Exp..

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

[19]  BerryGérard,et al.  The ESTEREL synchronous programming language , 1992 .

[20]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

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

[22]  Frédéric Boussinot Reactive Programming of Cellular Automata , 2004 .

[23]  Christian Brunette A Visual Reactive Framework for Dynamic Behavior Creation , 2002 .

[24]  James Cheney,et al.  Mechanized metatheory model-checking , 2007, PPDP '07.

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

[26]  Frédéric Boussinot FairThreads: mixing cooperative and preemptive threads in C: Research Articles , 2006 .