4 ms·
> Lisp only needs parentheses because its operators have variable arity, that’s about as deep as the “type system” goes. List needs parentheses because its par
by zajio1am 5y ago
> Lisp only needs parentheses because its operators have variable arity, that’s about as deep as the “type system” goes.
List needs parentheses because its parser does not depend on knowledge of operator's arity, it just parses generic abstract syntax tree.
Arity is property of functions, not expressions, so you would need static type system to assigning arity-types to expressions.
Also, you would still need parentheses to express structural data, where no operator arity is relevant.