Scala(ID:6814/sca014)


Scala is a new functional/object-oriented language that interacts smoothly with Java and C#. Compared to these environments, Scala has several additional language features, which make it suitable as a host language for domain specific languages. Among others, it supports the following concepts.
? A rich type system, with generics as well as abstract and dependent types.
? Object composition using mixin-style multiple inheritance.
? Named as well as anonymous functions as first-class values that can be nested.
? Pure object orientation, in the sense that every value is conceptually an object and every operator is a method call.
Scala is designed to operate in a JVM or .NET environment, so it can be regarded as an extension language for Java or C#. Scala does not have any constructs dealing with concurrency in the language proper. Instead, it re-uses the concurrency constructs of the underlying environment. These constructs are almost the same for Java and .NET ? they consist in each case of a class-based thread model with monitors for synchronization.


Related languages
Scala => PiLib   embedded in

References:
  • Odersky, Martin "Report on the Programming Language Scala", 2002 view details External link: Online copy
    Resources