I'm doubling down on my "both worlds" point, whether you state it as (scala = FP and OO) or (scala = FP or OO).
My choice to be null-free does not survive my coworkers' choice to use null. Likewise with mutability, purity, inheritance etc.
The feature that I want is to look at (n : T) and understand that T is T, not (T | ? extends T) and that n is n, not (n | null), or n now and n' later.
It's not Scala's fault if a team can't decide on a coherent coding style/standard, but I feel your point :(
That's why Rust's safety first creed is so welcome. (And that there's --strict in TypeScript.)
Not best of both, but it's the ability to solve the task with either FP or OO depending on the task and do it seamlessly.
> Networking and political effects seem to be more powerful than the merits of a language.
That's probably more true than anything, also it's not hipster enough to convince your regular clojurescript aficionados.