Projet PARA
Le Join-Calculus
Click
here for the english version
Le join-calculus est un langage experimental basé sur le calcul de
même nom. Il fournit une base simple pour la programmation
distribuée.
Le modèle de programamtion du join-calculus fournit des processus
concurrents tournant sur plusieurs machines, la vérification statique
de type, la portée lexicale globale, la communication distante
transparente, la mobilité par agents, et la détection des pannes.
Implémentations
Nous avons développé deux
implémentations du Join-Calculus dans l'environnement
Objective-CAML.
- Le langage join: Ce système comprend un compilateur et un
interpréteur écrits en Objective-CAML. Le langage est le join-calcul
pur avec les types de bases simples, la plupart des fonctions des
libairies d'Objective-CAML en primitives (y compris graphiques), et
une interface simple pour y ajouter n'importe quel module
d'Objective-CAML.
- Le Join-Objective-Caml système: Ce systeme est base sur la
distribution standard d'Objective-CAML, complétée par une libairie
"join-calcul". Le langage est Objective-CAML étendu syntaxiquement
avec les définitions du join-calcul et les locations. Le système
permet de faire tourner n'importe quel programme Objective-CAML (après
recompilation), tout en intégrant toute la puissance du join-calcul
(concurrence, synchronisation, distribution et agents mobiles).
Documentation
Publications sur le WEB
- Notre modèle de concurrence: The
reflexive chemical abstract machine and the join-calculus, by
Cédric Fournet and Georges Gonthier, POPL'96.
- Sur la programmation distribuée: A
calculus of mobile agents, by Cédric Fournet, Georges
Gonthier, Jean-Jacques Lévy, Luc Maranget and Didier Rémy,
CONCUR'96.
- Sur le typage du join-calculus: 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.
Contact et rapports de bug: jc-team@inria.fr