Synchronous Dataflow Pattern Matching

We introduce variant types and a pattern matching operation to synchronous dataflow languages. These languages are used in the design of reactive systems. As these systems grow increasingly complex, the need for abstraction mechanisms, in particular, data and control structures, is critical. Variant types provide a mechanism to precisely model structured data. The pattern matching operation, defined as a clock operator, provides an efficient control structure.

[1]  J. L. Bergerand,et al.  SAGA: A Software Development Environment for Dependability Automatic Controls , 1988 .

[2]  Luc Maranget,et al.  Optimizing pattern matching , 2001, ICFP '01.

[3]  Marc Pouzet,et al.  Modular resetting of synchronous data-flow programs , 2000, PPDP '00.

[4]  Grégoire Hamon,et al.  Calcul d'horloges et structures de contrôle dans Lucid Synchrone, un langage de flots synchrones à la ML , 2002 .

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

[6]  Pascal Raymond,et al.  The synchronous data flow programming language LUSTRE , 1991, Proc. IEEE.

[7]  Edward A. Lee,et al.  Hierarchical finite state machines with multiple concurrency models , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[8]  Leszek Holenderski,et al.  The Synchronous Approach to Designing Reactive Systems , 1998, Formal Methods Syst. Des..

[9]  Xavier Leroy The objective caml system release 3 , 2001 .

[10]  Marc Pouzet,et al.  Clocks as First Class Abstract Types , 2003, EMSOFT.

[11]  Paul Caspi,et al.  A functional extension of Lustre , 1995 .

[12]  Nicolas Halbwachs,et al.  Synchronous Programming of Reactive Systems , 1992, CAV.

[13]  Paul Le Guernic,et al.  Implementation of the data-flow synchronous language SIGNAL , 1995, PLDI '95.

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

[15]  Florence Maraninchi,et al.  Mode-Automata: About Modes and States for Reactive Systems , 1998, ESOP.

[16]  Florence Maraninchi,et al.  The Argos Language: Graphical Representation of Automata and Description of Reactive Systems , 2007 .