This article focuses on the potential of Java as a language for scientific parallel programming. We envisage a framework for parallel computing called HPJava. Here we describe some first steps towards a general framework, making specific proposals for the sector of HPJava most directly related to its namesake: High Performance Fortran. Rather than follow the HPF model directly, we propose introducing some of the characteristic ideas of HPF--specifically its distributed array model and array intrinsic functions and libraries--into a basically SPMD programming model. Because the programming model is SPMD, direct calls to MPI or other communication packages are allowed from the HPJava program. The language outlined here provides HPF-like distributed arrays as language primitives, and new distributed control constructs to facilitate access to the local elements of these arrays.