@lisp non-s-exp adopters are considered hung up on the parantheses, but is it actually that s-exp adopters are the ones with the hang-up? https://xlr.sourceforge.io made me think that #Lisp 's lists needn't be the only way for code-as-data, something less trivial but friendlier might be equally powerful while being more usable.
Follow

@wyatwerp @lisp

In my opinion s-exp have advantages respect XL syntax:

* precedence is explicit;

* you can nest domain-specific languages (DSL) because the first element of an s-exp can play the role of the DSL selector;

* it is easier creating multiple well behaving s-exp syntaxs, than for infix syntaxs, because in s-exp the syntax is weird in any case, so also the new DSL syntax is not less elegant than the host language :-)

* you can edit s-exp code using structural editing, like par edit, and it will work for any DSL syntax;

Maybe there is a middle ground between s-exp and XL approach. I know that Racket is experimenting with a parens-free alternative syntax, but I didn't studied it.

Sign in to participate in the conversation
CleverLibre Social

CleverLibre Social is an inclusive social instance for open discussion, learning, and community.
All cultures welcome.
Hate speech and harassment strictly forbidden.