This article feels like someone is defending their language. And that doesn’t bother me, but I don’t value that.
I don’t care about what’s popular or what feels most familiar. What I want is a dispassionate discussion of how different language features impact code quality, and I think you can only find that in more abstract discussions. The kind that turns people off with its talk of monads and applicatives.
> dispassionate discussion of how different language features impact code quality
I think we can start disagreeing here.
The metrics shouldn't be solely code quality, but also simplicity, readability, and how fast you can express yourself in it.
Code quality will go up the more language friction you add: types, "one way" of doing things, and function-oriented programming. Same code in a language with heavy types and strict functions will be of course "more solid". However, it will take 10x the time to write, be less flexible, and harder to understand.
Do you know of any articles/papers that try to do in-depth analyses of which features are helpful for building big systems?
Most posts I can think of basically say "X language is good" or "Y language is bad", but I'd really be interested in arguments like "feature A is better at accomplishing goal Z than feature B"
You're looking for a copy of Eloquent Ruby: http://eloquentruby.com/
> What I want is a dispassionate discussion of how different language features impact code quality
This can be difficult because code quality, productivity, safety are hard to objectively define and measure, so we always fall back to differences in interpretation and experience.