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
F#, Kotlin, Lasso, TypeScript, Red, Fortress, Ceylon, Swift, Hack
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 | #34 |
| GitHub rank | #38 |