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 (http://scala.epfl.ch/docu/scala2.html).
There are also the following new tools:
- a new `scalac' compiler, which is completely written in Scala
- a new `scalaint' interpreter shell, which is integrated with the
compiler and which drops most restrictions of the previous version.
- a new Eclipse plugin. See
http://scala.epfl.ch/docu/eclipse/index.html
- a new tool `sbaz' to manage and distribute Scala packages.
See http://scala.epfl.ch/downloads/sbaz.html
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:
http://scala.epfl.ch
Roedy Green - 03 Apr 2006 10:25 GMT
On Mon, 03 Apr 2006 10:50:29 +0200, francois.garillotNO@SPAM.epfl.ch
(François Garillot) wrote, quoted or indirectly quoted someone who
said :
>Scala also adds several important and convenient constructs, such as:
>
[quoted text clipped - 4 lines]
> - virtual types,
> - for-comprehensions,
I was looking at some of the Scala examples. One of the ways it
differs from Java is you don't have to keep defining the types of
every variable. It KNOWS what the type it is by the signature of the
method that defines the variable's initial value. This is a very good
thing. It makes code less brittle. If you change the signature of a
method, the local variables all automatically track the change.
It gets rid of most semicolons.
It seems pretty straight forward except for "def" which seems to have
many uses.

Signature
Canadian Mind Products, Roedy Green.
http://mindprod.com Java custom programming, consulting and coaching.