Followers

Monday, January 3, 2011

Scala Wala Bhaiyya

Hi Java Programmers,

Here, I am sharing a bit of information on Scala, which I thought would be interesting to share with you all.

Introduction
Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages, enabling Java and other programmers to be more productive. Code sizes are typically reduced by a factor of two to three when compared to an equivalent Java application.

Scala is a pure object-oriented language. Scala is also a functional language. Scala is statically typed. Scala provides a unique combination of language mechanisms that make it easy to smoothly add new language constructs in form of libraries. Scala interoperates with Java and .NET.

Application in real world
At Twitter, the social networking service, Robey Pointer (An infrastructure engineer at Twitter) moved their core message queue from Ruby to Scala. This change was driven by the company's need to reliably scale their operation to meet fast growing Tweet rates.

Others:
Sony Pictures: middleware
Nature.com: infrastructure
SAP community: ESME company messaging
Reaktor: many different projects
Mimesis Republic: multiplayer games
EDF: trading


Seamless integration with Java
Existing Java code and programmer skills are fully re-usable. Scala programs run on the Java VM, are byte code compatible with Java so you can make full use of existing Java libraries or existing application code. You can call Scala from Java and you can call Java from Scala, the integration is seamless.

Learning Scala
Some Java programmers find Scala a little alien at first but soon enjoy the concise way they can express their ideas as programs. Less key-strokes to make. Type inferencing, everthing-is-an-object, function passing, and many other features cut away unneeded syntactic overhead. For the small price of learning some new syntax, anyone can write programs with the same ease that they did in Java and steadily gain in problem solving power.
The best way to learn Scala depends on what you know already and the way you prefer to learn things.
If you have several years of Java programming experience then click here for great resources to start with. There we have a video talk given by Martin Odersky, the creator of Scala, then we have a website to try out some scala code firsthand, and then we have links to nice programming books on Scala.


Present
The current version of Scala is 2.8.1. It was released on November 9, 2010. You can download windows installation zip file from here.  To know what has changed in the previous versions, click here.

Happy Scala!!
Sunit Ronnie Ghosh

No comments: