7 ms·
If you don't like parens, don't use lisp. There are thousands of other languages discovering things like "lambda" as if it was a new idea. It is easy to create
by daly 7y ago
If you don't like parens, don't use lisp. There are thousands of other languages discovering things like "lambda" as if it was a new idea.
It is easy to create a domain-specific language on top of lisp if you want something with a specific focus. But trying to create a full language that hides lisp syntax is pointless. It's been tried SO many times and failed exactly that many times. There is so much to lose.
You lose homoiconic syntax which usually means you lose macros. You can hack macros by translating back to lisp, but why?
I can find hundreds of "lisp without parens", just do a google search. For example, there is Wisp.
You can generate lisp "without parens" by a simple hack.
Push all of the parens to the right side.
(+ (* 2 3) 6) becomes (ignore the underscores. I don't know how to generate verbatim text in HN)
_____________________________________(
+
_____________________________________(
* 2 3
_____________________________________)
6
_____________________________________)
Now if you "adjust your margins", all of the parens
disappear off the page.
Lisp is a language that everyone says "I don't get it and I don't like it" until.... they get it and then they LOVE it.
That's when they learn the limitations of all the other languages.
- brudgers 7y agoThe package's author is near the center of the Racket community. https://www.asumu.xyz/ https://www.asumu.xyz/ It lives alongside the Racket DSL for Algol 60 https://docs.racket-lang.org/algol60/ https://docs.racket-lang.org/algol60/, Datalog https://docs.racket-lang.org/datalog/index.html https://docs.racket-lang.org/datalog/index.html, and ProfessorJ https://docs.racket-lang.org/profj/index.html https://docs.racket-lang.org/profj/index.html in the Racket ecosystem.