Things actual EV drivers rarely worry about: Range.
Things that terrify non-Lisp programmers about Lisp: Parentheses.
Things actual Lisp programmers rarely worry about: Parentheses.
But it's 2025, it was enough to downvote and ignore the GP comment... Even responding with a dismissive https://www.thejach.com/imgs/lisp_parens.png is too much in current year. Another comment mentions paredit/parinfer, I'm not exactly masochistic but I hate tools that automatically type more than indentation for me so I don't use them, but I also basically never think about counting parens.
Instead of (qux (baz (bar (foo x)))) use other tools:
- Big picture: is this code overly procedural? If so, is it possible to make it declarative and functional?
- Line-level picture: one of the thread macros, functional composition, etc. will make this more readable. For example: (-> x foo bar baz qux).
...you do know no s-expression editor makes you count or type those out manually, right? It's all handled by paredit or parinfer, unless you're a masochist.
It's just not something any lisper thinks about.
If you want to have closing parentheses on separate lines the code simply becomes to long.
I didn't understand this when I started writing Lisp, but that style has its advantages and is supported by the editors.