Scala è un linguaggio di programmazione generico destinato principalmente alla Java Virtual Machine. Progettato per esprimere schemi di programmazione comuni in modo conciso, elegante e sicuro per i tipi, fonde stili di programmazione imperativi e funzionali.