A Java runtime based on IMC
JDpi is a Java framework that can be used to develop distributed applications following
the paradigm introduced by the distributed π-calculus (Dπ in short) introduced in .
This calculus is an extension of π-calculus where processes are distributed over a set of nodes
(or locations) each of which is univocally identified by a name (or location).
The processes can interact via channel based communication only if they are co-located, and
can also migrate between different locations. The framework provides Java classes to develop
processes that can migrate between nodes and communicate over channel, with a semantics derived
from Dπ. JDpi had been developed using the IMC framework, which is described in the
IMC: Implementing Mobile Calculi
IMC is a Java software framework for building
infrastructures to support the development of applications for
systems where mobility and network awareness are key issues. The framework is particularly useful to develop run-time support for languages oriented
towards global computing. It enables platform designers to customize
communication protocols and network architectures and guarantees
transparency of name management and code mobility in distributed
environments. A first implementation of IMC is presented in .
A compiler for JDpi
To ease the implementation of processes and to enforce the use of Dπ
paradigm we developed also a simple compiler. The user can thus build JDpi processes
using a little extension to the standard
Dπ, called myDpi, which main details are shown
here. The current version of the compiler provides also a simple editor and a beta version that can also use XML documents to generate JDpi processes.