I was not pretending that Java (or any language) is a performance panacea. I was addressing particular misconceptions in the post by Ripiz. I'm not sure your rebuttals have any particular relevance to a beginner.
It's so easy to blame everything on implemention ... One could argue that the performance issues of C/C++ is related to implementation too.
Yes, C++ compilers are not set in stone. They will continue to improve. That said, they've had a long maturation time, and are closer to the point of diminishing returns than younger technologies.
Regardless of whether or not the percentage is correct, you've admitted yourself that Java is an inadequate language, performance-wise.
For who? What purpose, what application?
Is it inadequate for a beginner's Pong clone? What about Quake? Or Minecraft? Crysis 3 would be a different matter. What about Doom 7 though - what will be in vogue then?
I was merely pointing to one concrete flaw that is exacerbated by the language itself
, much like C++ has the aliasing problem. Some quick googling suggests that some research has been done into virtual machines that can do object inlining. I don't know if such changes are in the production JVMs, but if not this again points to implementation issues at heart
- just the implementation must be more complex because it gets no help from the language.
And if Java is so good, it would've been used for coding commercial operating systems
. I don't write Operating systems, I would wager that most people here do not write operating systems. Especially the beginners amongst us. I utterly reject this as a meaningful metric of a language's "goodness".