I read a great article just now by Bruce Eckel โThe Positive Legacy of C++ and Javaโ. Bruce talks about Java as a language gettings stuck (complicated Generics, etc) but paving the way via the efficient JVM to develop and host new higher languages very quickly (Groovy, Scala).
It finishes with this great line
All future languages should learn from this: either create a culture where you can be refactored (as Python and Ruby have done) or allow competitive species to thrive.