Moscova Project
Cliquer ici pour la version française
The Join-Calculus
Go to the
The join-calculus is an experimental language based on the
homonymous process calculus. It provides a simple support for
distributed programming.
The join-calculus programming model features concurrent processes
running on several machines, static type-checking, global lexical
scope, transparent remote communication, agent-based mobility, and
some failure-detection.
Implementations
We have developped two
implementations of the Join-Calculus in the Objective-CAML
envirronment.
- The join calculus language: this system contains a compiler and an
interpreter written in Objective-CAML. The language is the
join-calculus, with basic types, most Objective-CAML libraries as
primitives (even graphical ones), and a simple interface to
incorporate any other Objective-CAML module.
- The JoCaml system: This system is based on the
standard Objective-CAML distribution, completed with a "join-calculus"
library. The language is Objective-CAML syntactically extended with
join-calculus definitions and locations. The system can not only run
any Objective-Caml program (after recompilation), but integrate all
powerful join-calculus constructs (concurrency, synchronization,
distribution and mobiles agents).
Documentation
Related Papers on the WEB
- Our model of concurrency: The
reflexive chemical abstract machine and the join-calculus, by
Cédric Fournet and Georges Gonthier, POPL'96.
- On distributed programming: A
calculus of mobile agents, by Cédric Fournet, Georges
Gonthier, Jean-Jacques Lévy, Luc Maranget and Didier Rémy,
CONCUR'96.
- On join-pattern compilation: Compiling
Join-Patterns, by Fabrice Le Fessant and Luc Maranget,
HLCL'98.
- On join-calculus typing: Implicit
Typing à la ML for the join-calculus, by Cédric
Fournet, Cosimo Laneve, Luc Maranget and Didier Rémy, CONCUR'97.
- On testing equivalence: May and Must
Testing in the Join-Calculus, by C. Laneve. Technical Report
UBLCS 96-04, University of Bologna, March 1996.
- On security: Secure Implementation of Channel Abstractions, by Martin Abadi, Cedric Fournet, and Georges Gonthier, April 1999. Parts of this work appear in preliminary form in
LICS'98 (Secure Implementation of Channel Abstraction) and in
Security & Privacy '99 (Secure Communication processing for Distributed Languages).
Contact address and bug reports: jc-team@inria.fr