Lisp Parentheses Debate
The cluster focuses on discussions about the prevalence and readability of parentheses in Lisp and S-expressions, including criticisms, defenses, and suggestions for alternatives like indentation or minimal parentheses.
Activity Over Time
Top Contributors
Keywords
Sample Comments
Even if you're not allowing macros and code-as-data, you may want to consider Lisp-style S-expressions. It doesn't take long to get used to the parentheses, especially given that good Lisp code uses indentation to such an extent that most of the parentheses "disappear" for a human reader.
Are there any popular lisps without parentheses or at least with minimal parentheses?
I know a lot of people think that you write more parentheses in Lispy languages, but actually in most cases you just type them in a different order, e.g. instead of `foo(x, y)` to call a function, you type `(foo x y)` and you even save a comma.Of course, there are constructs such as `let` and `cond` that are more parenthetically noisy (not so much in Clojure though), but on the flip side you don’t have to remember a lot of special syntax like in non-lisp languages.Most Lisp-people also use
A lisp that didn’t spam parentheses would probably be more palatable.
And some people says that lisp like languages use too much parenthesis...
Parentheses in Lisp is like significant whitespace in Python: A big stumbling block for people who don't use the language.
I think that for most people, s-expressions are harder to deal with than curly braces and begin/end.1. Non-Lisp languages have fewer braces in general due to the presence of non-expression "statements" and infix operators, while in Lisp nearly everything is an s-expression. Common Lisp in particular has a lot of double parens, so even a garden-variety LET form already has _three_ levels of parens, or four when you have a function call involved: (let ((x (foo :a
It's pretty close to Lisp without parentheses.
"I like lisps syntactically"and yet, not a single parentheses in your text. Disappointed.
And lisp, just less parentheses