Well, really it’s from 2010 but still pithy and worth revisiting:
I am currently working in Java to re-implement an algorithm I prototyped in lisp. If I replace all of the required curly-braces and semicolons in Java with parens it turns out that the Java program has more parens than the lisp program. The lisp program is 20 lines, the Java program has crossed 100 lines and is still growing.
That’s Tim Daly responding to Steve Yegge’s Lisp is Not an Acceptable Lisp post.
Daly makes a lot of good points and you should read his post if you’re interested in matters like this. What I like about it, though, is that it addresses the tired canard that Lisp is too annoying or difficult to use because of all those parentheses. That quote should be the standard response to any complaint about Lisp’s parentheses and even more so to every proposal to replace parentheses with indentation or whatever.
I think the problem that people have with parentheses in Lisp is that they think of them as arbitrary punctuation of the sort that they’re used to in Java or whatever horror they’re writing in. Lisp’s parentheses are, I suppose, punctuation but I think of them as part of the S-expressions that are the fundamental building blocks in Lisp. There’s nothing arbitrary about their use; every sexp starts with (
and ends with )
. That’s all there is to remember. In contrast, think of the situation with ;
in C or Pascal.