The funny thing about parens is that many traditional special forms (eg. let, cond..) use more parens than strictly necessary (and some modern dialects have tried to reduce them), but it turns out that keeping these seemingly superfluous parens allows a fairly stupid auto-indenter to always do the right thing. In fact, for the most part the indenter just needs a list of special-forms (or macros) that have a body (or in case of Common Lisp, you could just ask the runtime) and you're set to indent about 99% of most Lisp dialects correctly every time.syntonica wrote: ↑Fri Nov 08, 2019 5:50 amOh, I know. I was just teasing. And I haven't Lisped in ages. I couldn't remember the list syntax...mystran wrote: ↑Fri Nov 08, 2019 4:09 am Everyone likes to pick on the parenthesis, but if you write Lisp for a week you barely even see them anymore (rather you rely on indentation and let your editor tell you when the parens are balanced.. just like most people do with C-like syntax as well)... plus there's the "list" (or "list*" if you want a dotted tail) function to save you from having to cons like that.
In comparison, with languages like C++ people can't even agree on what the correct indentation should look like.
edit: I suppose for basic indent you could get away without the extra parens, but if you want more general code formatting or pretty-printing, then they are very helpful.