Um, no, the whole point of a virtual machine is that you only need
one compiler to cover all architectures. Java object code targets the VM, not
the underlying hardware. The VM (which is not, strictly speaking, an
interpreter) is different from platform to platform, but it (in theory)
functions exactly the same on each platform, be it x86, Arm or Sparc. Even the
performance characteristics should be fairly similar across
platforms.
JIT (just-in-time compiling) complicates this a bit, but JIT
is a feature of the VM, not the compiler, and didn't really become a major
feature of the VM until Java had been around for a while. The libraries were
probably written before any of the VMs had enough JIT to matter.
As for
claims of "premature optimization" mentioned earlier in the thread--I would
think it more likely that the code was tested on the VM, and the more optimal
solution selected empirically. Sun had first-rate engineers, and Java was a
pretty big deal to them.
(Note that my last point there suggests that
Sun spent more time on the implementation than the interface, which would
contradict Ellison's claim that the API was the hard part.)
--- Do not
meddle in the affairs of Wizards, for it makes them soggy and hard to light. [ Reply to This | Parent | # ]
|