Other Languages on the JVM Village

Love Jython? Can't get enough JRuby? Groovy? Dynamic languages on the JVM can set you free! Scala? Sure! Let us know what you think here in the Other Languages on the JVM SIG

Scala on JVM is pretty sweet

I have been studying the Scala language for the last several months, and I found it very attractive. Not only it can run on JVM and use any Java library available, it can run with speed as close as Java itself! And yet the language is flexible and concise when needed to make a piece of code ease on eye.

If you haven't check out Scala lately, go download it's package from http://www.scala-lang.org/downloads/index.html. It can be unzip/untar into a directory like C:\opt for example and can start using.

Here is a quick run with an interpreter that comes with the package:

C:\opt\scala\bin\scala
Welcome to Scala version 2.7.1.final (Java HotSpot(TM) Client VM, Java 1.6.0_10-beta).
Type in expressions to have them evaluated.
Type :help for more information.

scala> new java.util.Date
res0: java.util.Date = Wed Jul 16 21:19:44 EDT 2008
scala> def now = new java.util.Date
now: java.util.Date
scala> now
res1: java.util.Date = Wed Jul 16 21:33:20 EDT 2008
scala> now
res2: java.util.Date = Wed Jul 16 21:33:22 EDT 2008
scala> now
res3: java.util.Date = Wed Jul 16 21:33:23 EDT 2008

scala> val sum = 1 + 2 + 3
sum: Int = 6
scala> val nums = List(1,2,3)
nums: List[Int] = List(1, 2, 3)
scala> nums.foldLeft(0)((sum, n)=> sum+n)
res4: Int = 6
scala> nums.map(n=>Math.pow(n,2))
res5: List[Double] = List(1.0, 4.0, 9.0)

As you can see it's pretty neat to play with Scala collections along with anonlymous functions/closure.

What do you think of Scala Language?

-Z