See here:
…and this reply:
Matt’s “dangling parens” example is IMO appropriate for its context, but certainly not how you’d want most code to look. A formatter that allows it is not a formatter that is going to achieve a high degree of stylistic consistency.
From the proposal:
- Developers can move from one codebase to another without incurring the mental load of learning and conforming to a different style or being required to reconfigure their development environment.
- Developers spend less time worrying about how to format their code and more on the program's logic.
- Likewise, code reviewers spend less time commenting on code formatting issues and more on its logic and design.
These points all imply the proposal will remove most style decisions. Upvoters in this thread echo these points: no more style decisions, they just happen, you don’t have to think about it, easing cognitive load, projects look the same, no “formatting shock” in an unfamiliar codebase, etc.
Achieving those goals is inconsistent with the tool Tony describes above. If it allows parens like that, there will still be formatting shock.
Either we have a strict formatter and consistent style, or a loose formatter and inconsistent style. That’s strictly a zero-sum game.
In that tradeoff, I tend to err on the side of nuance — but whichever end of the continuum you prefer, we should be clear about where on that continuum this proposal sits. It seems it’s getting support from people who imagine it to exist at both ends.
I’ve said plenty in this discussion at this point, so I’m bowing out now.