The MPI standard document defines bindings for the C and Fortran language. As a response to the appearance of several prototypes of Java bindings, the Message-Passing Working Group of the Java Grande Forum was formed in late 1998. This working group came up with an initial draft for a common API specification, which was distributed at Supercomputing '98. Several changes have been made to the draft API, and the current API is now known as MPJ.
In the meantime, an initial implementation known as mpiJava was started in Syracuse University, which later moved to Florida State University and Indiana University respectively. The mpiJava software is following mpiJava 1.2 API specification , which is different to the MPJ API . The difference between the two APIs lies in the naming schemes of classes and methods. The functionality provided by both APIs to the users is essentially the same. Our reference implementation would initally follow mpiJava API specification. Later we plan to add support for the MPJ API in a subsequent release. To differentiate between "MPJ the API" and "MPJ the software", we have named the reference implementation as "MPJ Express" (MPJE). The development of reference implementation is currently active at ACET . Mark Baker and Bryan Carpenter, who were involved in the development of mpiJava are active contributors to this effort.