| ▲ | iLemming a day ago |
| Does it really matter? There's a point in every Lisper's life, a threshold after which the question becomes immaterial - you'd stop thinking about intricacies of whatever Lisp and focus on the platform specifics instead. Any given day I might program in three-four different Lisp dialects, e.g. Clojure/Clourescript, Fennel, Elisp, Janet, etc. and it practically feels like I'm using the same PL. While switching between TS and JS (same family) never feels even close - there's always some mental burden. |
|
| ▲ | andsoitis a day ago | parent | next [-] |
| > Does it really matter? not philosophically, but certainly practically. To double down, if all lisps are roughly equivalent from a language POV, then you'd want to pick the one or two that will give you the most practical advantage (libraries, documentation, dev environment, etc.) |
|
| ▲ | jasaldivara a day ago | parent | prev | next [-] |
| I don't want to be a gatekeeper, but Clojure, Janet and similars doesn't even have cons cells; that's hardly 'the same programming language'. |
| |
| ▲ | tacoda 21 hours ago | parent | next [-] | | I would call these different dialects of Lisp. The data doesn’t have to be a function. It’s illustrative. The patterns of application still work. What’s the difference if delimiters are different or if you are calling JVM libraries? The high-level ideas are still right there. Consider JavaScript. It is definitely not a Lisp, but if you model it as Lisp in C’s clothes, then all of a sudden IIFEs make total sense. The point is that it’s a helpful mental model for languages other than Lisp. | |
| ▲ | arunix a day ago | parent | prev [-] | | Is the lack of cons cells a significant limitation? | | |
| ▲ | ux266478 19 hours ago | parent | next [-] | | Limitation is the wrong way to think about things when computational equivalence is in play. It's about mental foundation. Lisp at its core is like driving a Turing machine, Clojure is not. | |
| ▲ | iLemming 17 hours ago | parent | prev [-] | | [dead] |
|
|
|
| ▲ | chabska a day ago | parent | prev | next [-] |
| If the difference didn't matter, we wouldn't have so many different lisps. Obviously the difference mattered enough to the people that created Common Lisp when Scheme already existed. Rich Hickey thought it mattered when he created a completely new Lisp instead of just porting Scheme to the JVM. |
| |
| ▲ | veqq a day ago | parent [-] | | > If the difference didn't matter, we wouldn't have so many different lisps Literally the opposite. We can make and use so many, because writing them is more or less the same. We can quickly throw together a new lisp for a new platform or such and use it without problem. | | |
| ▲ | allthetime a day ago | parent [-] | | Why is it necessary to throw together a new lisp and not just use an existing one? | | |
| ▲ | tacoda 21 hours ago | parent [-] | | Technically when you write in the domain, you are effectively making your own Lisp and then using it. It’s one of the amazing things that macros can do. |
|
|
|
|
| ▲ | arikrahman a day ago | parent | prev [-] |
| Even the Lisps have Lisps. Like Clojure with ClojureScript, CLR, ClojureDart, Jank... etc. |
| |
| ▲ | slifin a day ago | parent [-] | | Yes though they're trying to be effectively the same lisp I do love that I learnt Clojure once like 5-7 years ago and more and more dialects keep expanding the choice of runtime I can target |
|