ProFun - A Language for Executable Specifications

We present a new programming language ProFun which is aimed for the specification and prototype implementation of reactive systems. ProFun combines the paradigms of concurrent and functional programming. A formal operational semantics is developed as a basis for verification techniques. We have implemented a ProFun-compiler which uses C++ as its target language.

[1]  John W. Backus,et al.  Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs , 1978, CACM.

[2]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[3]  Yu. A. Gur'yan,et al.  Parts I and II , 1982 .

[4]  Iso. Lotos,et al.  A Formal Description Technique Based on the Temporal Ordering of Observational Behaviour , 1985 .

[5]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[6]  Tommaso Bolognesi,et al.  Tableau methods to describe strong bisimilarity on LOTOS processes involving pure interleaving and enabling , 1994, FORTE.

[7]  Dominique Clément,et al.  The Natural Dynamic Semantics of Mini-Standard ML , 1987, TAPSOFT, Vol.2.

[8]  Glynn Winskel,et al.  An introduction to event structures , 1988, REX Workshop.

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

[10]  Rita Loogen Parallele Implementierung funktionaler Programmiersprachen , 1989, Informatik-Fachberichte.

[11]  J. Baeten Applications of process algebra , 1990 .

[12]  Xavier Leroy,et al.  The ZINC experiment : an economical implementation of the ML language , 1990 .

[13]  John H. Reppy,et al.  CML: A Higher-Order Concurrent Language , 1991, PLDI.

[14]  Andrew W. Appel,et al.  Standard ML of New Jersey , 1991, PLILP.

[15]  Eugenio Moggi,et al.  Notions of Computation and Monads , 1991, Inf. Comput..

[16]  J. F. Groote,et al.  A Correctness Proof of the Bakery Protocol in CRL , 1994 .

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

[18]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[19]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[20]  Jan Friso Groote,et al.  Proof Theory for µCRL: A Language for Processes with Data , 1993, Semantics of Specification Languages.

[21]  Flemming Nielson,et al.  From CML to Process Algebras (Extended Abstract) , 1993, CONCUR.

[22]  HanneRiisNielson ComputerScienceDepartment From Cml to Process Algebras , 1993 .

[23]  Martin Raber Parallele Implementierung funktionaler Programmiersprachen , 1994 .

[24]  Matthew Hennessy,et al.  Towards a Semantic Theory of CML (Extended Abstract) , 1995, MFCS.

[25]  Roberto M. Amadio,et al.  Toward a Modal Theory of Types for the pi-Calculus , 1996, FTRTFT.

[26]  Matthew Hennessy,et al.  A theory of weak bisimulation for core CML , 1996, ICFP '96.