Scala is a static-typed language combining functional and object-oriented paradigms that runs on the JVM. It provides powerful features like pattern matching, higher-order functions, and type inference while maintaining compatibility with Java libraries.
functional, object-oriented, imperative, concurrent, generic
data science, distributed system, server-side applications, web development, big data
first-class functions, closures, pattern matching, algebraic data types, type inference, operator overloading, traits/interfaces, extension methods, string interpolation, reflection, meta-programming, macros, type classes
static system, structural typing, strong typing, full inference, compile-time checking, conservative type coercion, optional type annotations
compiled, hybrid
Java, Haskell, ML, Erlang, Lisp, Pizza, Scheme, OCaml, Smalltalk, Standard ML, Eiffel, Common Lisp, Oz
Hack, Red, Fortress, Swift, TypeScript, Lasso, Kotlin, Ceylon, F#
scala, kojo, sbt, sc
Status | active |
Type | programming |
Created | 2004 |
Designed by | Martin Odersky |
Developed by |
École Polytechnique Fédérale de Lausanne (EPFL) Lightbend (formerly Typesafe) Swiss Federal Institute of Technology in Lausanne Martin Odersky |
PyPL Index | #22 |
TIOBE Index | #31 |
GitHub rank | #38 |