And really there is no alternative - once you've used higher-kinded types there's no going back. Some organizations make the switch to Haskell, but that's not an option in many environments. Other than that, if you want higher-kinded types there's nothing that's remotely as mature as Scala out there.
I can't speak to "fundamental issues with the language" because I haven't found any.
Do companies that have adopted Scala really value higher-kinded typing that much?
I've gotten used to handling concurrency as a monad, for example, and honestly dread the time when I have to manually deal with manual synchronisation again.
Not sure about Scala, but I find partially applied higher order functions to frequently be the best choice in Haskell code.
I disagree. Once you learn to use partially applied higher-order functions, they end up being useful everywhere. I'm using them right now in Scala for my day job, and my code is not particularly fancy.
> The amount of times where defining a partially applied higher-order function is the best way to solve a problem is nonzero, but still really really low.
I was with you until this. Using partial application doesn't create monsters, and in fact is rather easy to follow and understand (assuming you know what partial application is, of course).
There are however, features of Scala that can be abused to create monsters, the most obvious of which is implicit conversions. An extremely useful feature, but can cause a mess if you're not careful. And even with those, it's still entirely static, and your IDE can highlight which ones happened where, as opposed to something like Ruby, where you can update classes at runtime.
And you're not exactly contradicting me. They are an "advanced" feature partly because they're not found in (many) other languages.
An added benefit: due to the scarcity, lots of Scala shops are open to remote developers. I abhor the idea of moving back to the Bay Area so that's important to me.
Having said that, what evidence do you have that Twitter is backing away from Scala? What are they supposed to be replacing it with? My own experience is that mainstream jobs in my country are very slowly and timidly starting to adopt Scala, and only in the most controlled fashion, as "just a better Java".