
Scala - język typowany, działający na wirtualnej maszynie Java

Scala to język typowany, który wspiera programowanie zarówno obiektowe, jak i funkcyjne działający na wirtualnej maszynie Java. Został stworzony w 2001 roku przez Martina Odersky’ego i oddany do ogólnego użytku w 2004 roku. Jego nazwa pochodzi od anielskiego zwrotu scalable language, co ma zwracać uwagę na podstawową zaletę tego języka, jaką jest skalowalność, czyli dostosowanie do potrzeb użytkownika. Powstał jako alternatywa dla stworzenia prostszej wersji Java będącej językiem nieco starszym, a zatem wymagającym każdorazowo utrzymywania kompatybilności wstecznej, która zapewni poprawne działanie nowszych wersji kodu w starszych wersjach JVM.
Scala – skalowalność i elastyczność dla każdego typu aplikacji
Dzięki łączeniu programowania obiektowego i funkcyjnego Scala promuje lepsze kodowanie i pozwala osiągnąć większą wydajność całej aplikacji. Jest przy tym mniej restrykcyjnym i bardziej przejrzystym, zwięzłym i funkcjonalnym językiem niż Java. Język ten samodzielnie potrafi zgadywać typy obiektów, z kolei elementy funkcyjne języka wpływają na wysoką jakość kodu oraz jego bezpieczeństwo, co jest niezwykle przydatne zwłaszcza w programach wielowątkowych. Dodatkowo język ten jest przyjazny dla deweloperów, którzy do te pory używali programowania obiektowego, ponieważ styl funkcyjny nie jest tu obligatoryjny i można go włączyć w dowolnym momencie pracy nad projektem.
Scala umożliwia korzystanie z linijek kodu napisanych w języku Java bez konieczności przepisywania na nowo bibliotek, które zostały użyte w projekcie. Dzieje się tak, ponieważ korzysta ze standardowych bibliotek i tylko niewielka ich część musi być na ponów zastąpiona. Z kolei tak tworzone skalowalne projekty oparte na schemacie są o wiele łatwiejsze do kodowania, testowania, debugowania i wdrażana. Język ten oferuje czysty kod oraz zaawansowane funkcjonalności, dlatego też może być stosowany jako język wszechstronny w wielu projektach do tworzenia oprogramowania komputerowego, gier, aplikacji internetowych, rozwiązań mobilnych i oprogramowania pod warunkiem, że wysoka wydajność nie jest głównym priorytetem. Scala używana jest przez takie światowe marki jak: LinkedIn, Amazon, Twitter, Blizzard, Coursera czy Klout.