In HPF, with its global-thread-of-control model, a proper interface to the underlying message-passing platform is only practical through the extrinsic procedure mechanism. In HPspmd it is possible to access the MPI interface directly. In Fortran and C++ bindings of HPspmd probably the only major issue arising is access to the local elements of distributed arrays as standard sequential Fortran or C++ arrays, which can be passed to the standard MPI functions. Inquiry functions on distributed arrays return the sequential arrays as pointers or handles (depending on the language instantiation).
We have already implemented a Java language binding for MPI, version 1.1 [6,8]. Our current approach is a relatively direct transcription of standard MPI bindings, but Java object serialization introduces new possibilities for passing compound objects. Similar projects on Java MPI bindings are in progress elsewhere [26,15].