Patrick Viry posted "Java for HPC (High-Performance Computing)" back in September (pointed out again on Dzone). It's kinda weird because he says Java's fine for HPC but not if you use the standard libraries?
He points out Java's traditional benefits over traditional HPC languages (C++, Fortran?): faster development, higher code reliability, portability, and adaptive runtime optimization, and mentions an experienced C coder did better with Java than he did with C, despite more experience with C than Java.
He says there are some caveats, though:
Pure java libraries aren't well suited for HPC. This one's interesting, because I thought the whole point of the post was to say "Java is okay for HPC," only for him to say "Java is okay for HPC as long as you don't rely on Java libraries."
He then puts in a heavy ad for Ateji PX, which allows you to spawn processes with a new "||" operator. It also supports parallel iteration, and interprocess communication.
Things like this are becoming really common. Even if you ignore distributed things like Terracotta or Coherence (process distribution and data distribution, in order), there's also Akka (scala's actor model, distributed, available for Java and Scala), and Erjang (a JVM-based Erlang VM).
Fun space to watch.