In this article we discussed motivations for introducing an HPspmd programming model: a SPMD framework for using libraries based on distributed arrays. It adopts the model of distributed arrays standardized by the HPF Forum, but relinquishes the high-level single-threaded model of the HPF language. This makes compilers or translators for the HPspmd-extended languages a relatively straightforward proposition. As a concrete example, we described the specific syntax of HPJava.
Two recent languages that have some similarities to our HPspmd languages are F- - and ZPL. F- -  is an extended Fortran dialect for SPMD programming. The approach is different to the one proposed here. There is no analogue of global subscripts, or HPF-like distribution formats. In F- - the logical model of communication is built into the language--remote memory access with intrinsics for synchronization--where our basic philosophy is to provide communication through separate libraries. ZPL  is a array parallel programming language for scientific computations. It has a construct for performing computations over a region, or set of indices, quite similar to our overall construct. Communication is more explicit than HPF, but not as explicit as in the language discussed in this article.
At the time of writing the HPJava translator is partially operational. Ongoing work will complete the functionality, and add some optimization for the generated code. The language definition calls for full compile-time or runtime checking of the constraints on locality of reference. The translator will be enhanced to add these. Early benchmarks results will be included in the final version of this paper.