3 ms·
Nobody claimed Lisp syntax was optimal for math papers. Neither is C syntax. The Lisp syntax does have advantages for program source code. Sure, it has disadvan
by mbrock 11y ago
Nobody claimed Lisp syntax was optimal for math papers. Neither is C syntax. The Lisp syntax does have advantages for program source code. Sure, it has disadvantages too. Everything is a compromise.
The Lisp syntax is so incredibly controversial, and that fact itself is incredibly strange to me. I see it as a pragmatic engineering decision: let's represent source code as syntax trees, and then sophisticated editing modes become straightforward, macros become straightforward, and the syntax becomes very uniform.
This big thread indicates another reason Lisp isn't popular: because people keep arguing back and forth about the textual syntax, rather than discussing actual experiences with using it.
- lispm 11y agoThere are actual features which make Lisp a bit more difficult to understand and a few are related to syntax: especially the code as data feature. Some elements of the language have different purposes: both as code and as data. Symbols can be data and they can be identifiers. Lists can be data and they can group elements of the programming language. Others have only one purpose. For example an array is always data. Symbols and lists behave differently depending on the context: Examples for Lisp snippets: (foo bar baz) ; it could be a macro, function or special operator form (quote (foo bar baz)) ; here it is data (defun do-something (foo bar baz) (a b c)) ; here it is an arglist (defun do-something (a b c) (foo bar baz)) ; one element later it is a form These context need to be learned and actual visual clues are a) the symbol in front and b) the structure of the expression. This is puzzling for a lot of people. A few never really take that hurdle.