I have been writing #Scala professionally for three years now. My conclusion is it’s terrible for almost everything. The compiler is slow. Most of its features are half-documented and change between versions. Compilation errors are incomprehensible and sometimes spurious. The syntax is cumbersome, the language somehow bad at being OO, FP, *and* imperative. Writing deterministic code is hard. Debugging unreliable. Runtime system is…the JVM. Build system absolutely byzantine.
