I think an interesting synthesis is Haskell, where function calls are simply juxtaposition. Parenthesis are just grouping like most languages, but it ends up feeling quite Lispy.
I think an interesting synthesis is Haskell, where function calls are simply juxtaposition. Parenthesis are just grouping like most languages, but it ends up feeling quite Lispy.
You might want to rethink that hurried statement just a tad:
// C
for ((i = 0; i < MAX; i++)) {...}
printf(("hello, %", name));
#if defined ((__GNUC__))
# Shell
var=$((cat /etc/motd))
# Pascal
type color_type = ((Red, Green, Blue));But if you want to be technical, most of your examples would not be considered expressions in the given language.
int j = i = 0; i < MAX; i++; /* ? I think not. */
But sure, many languages also use parenthesis for things besides general expressions. Ultimately this argument is anti-productive nitpicking.So that's a piece of cognitive load that you have to carry to know when the parentheses are on an expression, and do not change the meaning if compounded, versus when they are around something else where they may not be removed or compounded.
In Lisp, everything is an expression, and no there is no willy-nilly removal of nesting or compounding of nesting. That's less to remember.
Even fragments of forms are expressions, according to ANSI CL glossary terminology. If we have (let ((a b)) ...) then a, b, (a b), ((a b)) and let are all expressions. With the exception of b, what they are not is forms: expressions presented for evaluation.
> Ultimately this argument is anti-productive nitpicking.
Who started it?
WTH? You, by nitpicking a general statement meant to connect two perspectives and maybe allow some synthesis between two starkly divided worlds.
I've had the Lisp kool-aid. I agree it makes for a great time. I can do without the proselytizing blast.
FWIW "in Lisp [parenthesis] also mean another level of application" is also technically incorrect (nesting is not always application), but I think it gets the actual point across better than being more abstract.