• It has an event-based concurrency model.
• It supports both an imperative style and a functional style.
• It is purely object-oriented.
• It intermixes well with Java (and .Net).
• It enforces sensible static typing.
• It is concise and expressive.
• It is built on a small kernel.
• It is highly scalable, and it takes less code to create high-performing applications.
Aki szereti a Java-t és szereti a C++-t is, az különösen kedvelheti a Scala-t is. Pl. itt is van operator overloading (még ha nem is az, de úgy néz ki).
Ha nem ismered érdemes rápillantani!
Egy példát azért írok.
Ez a scala kód:
class CreditCard(val number: Int, var creditLimit: Int)
Fordítás után olyan, mintha ezt írtuk volna Java-ban:
public class CreditCard extends java.lang.Object implements scala.ScalaObject{
private int creditLimit;
private final int number;
public CreditCard(int, int);
public void creditLimit_$eq(int);
public int creditLimit();
public int number();
public int $tag() throws java.rmi.RemoteException;
}
Szerk.: rövid utazás a Scala körül.