The Scala language fuses object-oriented and functional programming
while staying completely interoperable with Java. It is compiled to
JVM class files, subclassing is allowed both ways between Java and
Scala classes, and no glue code needs to be written by users.

Scala also adds several important and convenient constructs, such as:

  • mixin composition with traits,
  • first-class functions,
  • case classes and pattern matching,
  • XML expressions and patterns,
  • virtual types,
  • for-comprehensions,

The second major version of Scala is now publicly available. This
version adds some new constructs to the language and simplifies
some idioms (

There are also the following new tools:

This implementation runs on the Java VM, JDK 1.4 or 1.5. An automatic
installer is available for Windows, MacOS X, Linux, Solaris, and most
other operating systems.

For further information and downloads, please visit: