It became apparent that, while Java is a good language for small applications, Java is not adequate to address the needs of current/future high-end applications, normally written in the much more powerful and versatile C/C++ languages.
Java is slow, and requires all C/C++ applications to be completely rewritten. Often, applications ported from C/C++ to Java produces product at high cost.
from http://ivm.sourceforge.net/icvmcpp.html
So, Java is doomed now?
MJ Ray wrote:
It became apparent that, while Java is a good language for small applications, Java is not adequate to address the needs of current/future high-end applications, normally written in the much more powerful and versatile C/C++ languages. Java is slow, and requires all C/C++ applications to be completely rewritten. Often, applications ported from C/C++ to Java produces product at high cost.
I think these people are exhibiting severe naivete. Firstly, for trying to create an effectively compute-bound application (3d game) in a language for which performance is definitely a secondary issue- nice, but not worth sacrificing ideals for.
Secondly, for thinking that their virtual machine is going to run _so_ much faster than the one hundreds of people have been working solidly on for many years. No virtual machine is ever going to run as fast as C, just as C will never run as fast as assembler. C[++] strikes the economic sweet spot between performance and development time.
I know it's a mistake to think that a thing can't be done better just because it hasn't before, but running a virtual machine as fast as C is theoretically impossible (AFAICS, IMHO etc etc).
Incidentally, there are chips out which constitute (to coin a phrase) the Java Physical Machine. Running bytecode natively, they do pretty well against C I would imagine. Plus all kinds of kludges (JIT, MMI/hotspot) needn't be in memory.
Alexis