Scala is a strongly typed hybrid functional/object-oriented language that can be both interpreted and also compiled into byte-code and run on top of a Java Virtual Machine. (Scala can also be compiled into MSIL to run on top of the .Net framework; but I'm only going to focus on the JVM integration in these posts.) The language is loosely based on Java but is much more extensible owing to the fact that functions are first-order values and higher-ordered typing allows programs to be statically type-checked and optimised by the JIT at run-time. In contrast, other dynamic languages such as JRuby and JPython tend to be executed with much more indirection, and as a result, the JIT isn't able to perform as many types of optimisation.
Oct 19, 07
Mr B Loid