Tag Info

Scala is a general purpose programming language principally targeting the Java Virtual Machine. Designed to express common programming patterns in a concise, elegant, and type-safe way, it fuses both imperative and functional programming styles. Its key features are:
advanced static type system with type inference;
function types; pattern-matching; implicit parameters and conversions; operator overloading; full interoperability with Java; concurrency

Scala is a general purpose programming language principally targeting the Java Virtual Machine. Designed to express common programming patterns in a concise, elegant, and type-safe way, it fuses both imperative and functional programming styles. Its key features are:

Static typing

Advanced type system with type inference and declaration-site variance

Function types (including anonymous) which support lexical closures

Pattern-matching

Implicit parameters and conversions which support the typeclass and enrich-my-library patterns

Mixin composition

Full interoperability with Java

Powerful concurrency constructs

Advanced language constructs such as delimited continuations and an experimental macro system