Emphasis to date has been on providing class libraries to facilitate communication and parallel computation within the framework of Java. For now this means communicating Java applications, but eventually it should be possible provide class libraries which allow Java applets downloaded from a common server to communicate (for example, by having their server transparently through-route communications).
We have prototyped a class library for Fortran-M-like channel communication to support a message-passinge style or programming. Presently we are experimenting with class library interfaces to directly support the data parallel programming style.
The existing software for both these approaches has been layered directly on the Java socket interface. For the next stage of development we plan to produce a Java interface to a run-time library being developed in the PCRC project. By interfacing to an existing body of software through Java native methods we will avoid reimplementing the complex collective operations needed in data parallel applications. We also expect to obtain better efficiency.