I am surprised how they manage to get scala to perform so much worse than pure java.
Scala does generate optimized Java byte code. Pretty much any Java code can be directly ported to Scala with nearly identical performance.
The Scala benchmarks perform worsethan Java's, on average, for two main reasons. The first is that some of the tasks have been implemented using higher level code (think memory allocation and closure generation), trading conciseness for performance. The second is that the Scala benchmarks haven't been tuned and tweaked to the extent that the Java ones have.
Then there are a couple benchmarks where Scala's performance is hugely worse than Java. This seems to be because the Java benchmark was implemented using optimized native libraries (big integers as I recall) or using a better algorithm. Again, Scala could achieve equivalent performance in principle, but someone needs to invest the time to update the benchmark implementations.
Life on earth exhibits a specific "handedness" or chirality. All DNA twists the same way, for example. Apparently the term for this is homochirality.
For people like me, without Scala the JVM wouldn't even be under consideration, though I admit that Java has been more usable since it got generics.
The creator of Scala, Martin Odersky, was instrumental in the design and development of Java's generics. I believe he is also responsible for (some version of) Sun's javac implementation.
For a reference, see
In my opinion, Scala is excellent. So far I've used Scala to generate code which leverages NVIDIA GPU's for computational physics. I've also used Scala to do simple combinatorics and text processing. The latter is particularly pleasant -- a parser-combinator framework is included in the standard library which makes it a snap to define and process arbritrary grammars. My biggest frustration with Scala has been the somewhat spotty IDE support (compared to Java). However, the situation is improving and decent plugins for Eclipse, Netbeans and IDEA are all on the horizon.
It seems like this method requires jailbreaking. Here's another reference.
Nothing will ever be attempted if all possible objections must be first overcome. -- Dr. Johnson