> Note that programs were usually typed on as few lines as possible, because they had to be punched to punched cards or typed in at a teletype which echoed its input on paper.
I suspect this is the real reason behind "cram all the closing parentheses together on the same line" rule.
The only rationale I've seen online is in Taylor Campbell's style guide:
> Absolutely do not place closing brackets on their own lines.
> ...
> Rationale: The parentheses grow lonely if their closing brackets are all kept separated and segregated.
Yeah, right.
Anybody know anything about how this rule came to be?
a96 [3 hidden]5 mins ago
Heh, I remember that and personally answering no when he complained about my paren formatting. I miss that channel.
weknowbetter [3 hidden]5 mins ago
This drives me nuts. I love LISP but refuse to pretend writing `)))))))` is reasonable.
uncletaco [3 hidden]5 mins ago
Why are you writing ')))))' instead of your closing parenthesis being autogenerated. Sounds like a recipe for failure.
greenbit [3 hidden]5 mins ago
))))))) isn't so bad, but )))))))) is just getting ridiculous. You have to draw the line somewhere
isr [3 hidden]5 mins ago
picolisp has an interesting solution to this. A single ']' will close all open )'s for that block of code
packetlost [3 hidden]5 mins ago
That has to be a nightmare for parsers lol
ashkankiani [3 hidden]5 mins ago
not really. it's just pop all of the stack and return to depth 0. you can still detect imbalanced parens, but i'm not sure how it affects the provenance question of where a missing one would point out in errors.
matt_daemon [3 hidden]5 mins ago
This is somewhat confusing as there is a fairly well known toy Lisp interpreter called Lispy written by Peter Norvig
I suspect this is the real reason behind "cram all the closing parentheses together on the same line" rule.
The only rationale I've seen online is in Taylor Campbell's style guide:
> Absolutely do not place closing brackets on their own lines.
> ...
> Rationale: The parentheses grow lonely if their closing brackets are all kept separated and segregated.
Yeah, right.
Anybody know anything about how this rule came to be?
https://www.norvig.com/lispy.html
LISPy things you can do in 64K bytes of core (2019) - https://news.ycombinator.com/item?id=44490099 - July 2025 (4 comments)