Scala - это язык программирования общего назначения, в основном предназначенный для виртуальной машины Java. Разработанный для выражения общих шаблонов программирования в сжатой, элегантной и безопасной для типов форме, он сочетает в себе как императивный, так и функциональный стили программирования. Его ключевые особенности: усовершенствованная система статического типа с выводом типа; типы функций; сопоставления с образцом; неявные параметры и преобразования; перегрузка оператора; полная совместимость с Java; параллелизм