The m-calculus: a higher-order distributed process calculus

This paper presents a new distributed process calculus, called the M-calculus, that can be understood as a higher-order version of the Distributed Join calculus with programmable localities. The calculus retains the implementable character of the Distributed Join calculus while overcoming several important limitations: insufficient control over communication and mobility, absence of dynamic binding, and limited locality semantics. The calculus is equipped with a polymorphic type system that guarantees the unicity of locality names, even in presence of higher-order communications -- a crucial property for the determinacy of message routing in the calculus.

[1]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

[2]  Miss A.O. Penney (b) , 1974, The New Yale Book of Quotations.

[3]  G. Boudol,et al.  Notes on Algebraic Calculi of Processes , 1989, Logics and Models of Concurrent Systems.

[4]  Gérard Berry,et al.  The chemical abstract machine , 1989, POPL '90.

[5]  Didier Rémy,et al.  Type inference for records in natural extension of ML , 1994 .

[6]  John C. Mitchell,et al.  Theoretical aspects of object-oriented programming: types, semantics, and language design , 1994, Choice Reviews Online.

[7]  Peter Buneman,et al.  Theoretical Aspects of Object-Oriented Programming , 1994 .

[8]  Ira R. Forman,et al.  Interacting processes: a multiparty approach to coordinated distributed programming , 1996 .

[9]  Jean-Jacques Lévy,et al.  A Calculus of Mobile Agents , 1996, CONCUR.

[10]  Cosimo Laneve,et al.  Implicit Typing à la ML for the Join-Calculus , 1997, CONCUR.

[11]  G. Erard Boudol The -calculus in Direct Style (*) , 1997 .

[12]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[13]  Roberto M. Amadio An Asynchronous Model of Locality, Failurem and Process Mobility , 1997, COORDINATION.

[14]  Jean-Jacques Lévy,et al.  Some Results in the Joint-Calculus , 1997, TACS.

[15]  Benjamin C. Pierce,et al.  Location-Independent Communication for Mobile Agents: A Two-Level Architecture , 1998, ICCL Workshop: Internet Programming Languages.

[16]  Rocco De Nicola,et al.  KLAIM: A Kernel Language for Agents Interaction and Mobility , 1998, IEEE Trans. Software Eng..

[17]  James Riely,et al.  Resource Access Control in Systems of Mobile Agents , 2002, HLCL.

[18]  Jan Vitek,et al.  Seal: A Framework for Secure Mobile Computations , 1998, ICCL Workshop: Internet Programming Languages.

[19]  Silvano Dal Zilio Le calcul bleu : types et objets , 1999 .

[20]  Matthew Hennessy Cogs Subtyping and Locality in Distributed Higher Order Processes , 1999 .

[21]  Luca Cardelli,et al.  Types for mobile ambients , 1999, POPL '99.

[22]  Nobuko Yoshida,et al.  Suptyping and Locality in Distributed Higher Order Processes (extended abstract) , 1999, CONCUR.

[23]  Peter Sewell,et al.  Nomadic Pict: language and infrastructure design for mobile agents , 1999, Proceedings. First and Third International Symposium on Agent Systems Applications, and Mobile Agents.

[24]  Álvaro Figueira,et al.  DiTyCO: an Experiment in Code Mobility from the Realm of Process Calculi , 1999 .

[25]  Nobuko Yoshida,et al.  Subtyping and locality in distributed higher order processes , 1999 .

[26]  Elie Najm,et al.  Elements of an object-based model for distributed and mobile computation , 2000, FMOODS.

[27]  Rocco De Nicola,et al.  Programming Access Control: The KLAIM Experience , 2000, CONCUR.

[28]  Rocco De Nicola,et al.  Types for access control , 2000, Theor. Comput. Sci..

[29]  Jean-Jacques Lévy,et al.  An Asynchronous, Distributed Implementation of Mobile Ambients , 2000, IFIP TCS.

[30]  Peter Sewell,et al.  Nomadic Pict: language and infrastructure design for mobile agents , 2000, IEEE Concurr..

[31]  Jan Vitek,et al.  Secure composition of untrusted code: wrappers and causality types , 2000, Proceedings 13th IEEE Computer Security Foundations Workshop. CSFW-13.

[32]  Dominic Duggan Atomic Failure in Wide-Area Computation , 2000, FMOODS.

[33]  Luca Cardelli Wide Area Computation , 2000, JISBD.

[34]  Davide Sangiorgi,et al.  Controlling interference in ambients , 2000, POPL '00.

[35]  Silvano Dal-Zilio,et al.  Mobile Processes: A Commented Bibliography , 2000, MOVEP.

[36]  Davide Sangiorgi,et al.  Communicating and Mobile Systems: the π-calculus, , 2000 .

[37]  Michele Bugliesi,et al.  Boxed Ambients , 2001, TACS.

[38]  Davide Sangiorgi,et al.  A Distributed Abstract Machine for Safe Ambients , 2001, ICALP.

[39]  Ilaria Castellani,et al.  Process Algebras with Localities , 2001, Handbook of Process Algebra.

[40]  Alan Schmitt,et al.  The Marvel Programming Model: a higher-order distributed process calculus , 2001 .

[41]  张晓丽,et al.  Enterprise Java Beans技术架构分析 , 2001 .

[42]  Silvano Dal Zilio,et al.  Mobile processes: a commented bibliography , 2001 .

[43]  Assigning Types to Processes , 2002, Inf. Comput..

[44]  Matthew Hennessy,et al.  Bisimulation congruences in safe ambients , 2002, POPL '02.

[45]  Alan Schmitt Safe Dynamic Binding in the Join Calculus , 2002, IFIP TCS.

[46]  David Teller,et al.  Using Ambients to Control Resources , 2002, CONCUR.

[47]  Marc Lacoste,et al.  An Abstract Machine for a Higher-Order Distributed Process Calculus , 2002, Electron. Notes Theor. Comput. Sci..

[48]  Alan Schmitt,et al.  The m-calculus: a higher-order distributed process calculus , 2003, POPL '03.

[49]  Jan Vitek,et al.  Secure composition of untrusted code: box π, wrappers, and causality types , 2003 .