Hacker News new | past | comments | ask | show | jobs | submit login

> Clojure puts a huge focus on being backwards compatible within it's own ecosystem

Like lots of languages. Incl. Lisp itself. For example the Maxima computer algebra system written in Lisp has been started >50 years ago (as Macsyma) and still is being worked on.

https://maxima.sourceforge.io

The current build system ASDF works in Lisp implementations which date back to the mid-70s...

https://common-lisp.net/project/asdf/#implementations




> Like lots of languages. Incl. Lisp itself.

Sure, I'm just highlighting that your statement about Clojure is correct when it comes to compatibility against other languages while being incorrect if you consider it within the Clojure ecosystem itself.


You might want to tell the maintainers about their error:

> Clojure is a Lisp not constrained by backwards compatibility

https://clojure.org/about/rationale


No need, the maintainers of Clojure.core knows about it, propagates the idea and most people in the community follows it as well.


Right, that it is compatible to itself does not sound particular noteworthy. Lots of language eco-systems have that. That's also why many languages (like C, C++, JavaScript, Java, Ada, Common Lisp, ISLISP and Scheme) have actual language standards with, where there is a high focus on protecting investments.


I'm not submitting "Clojure and the ecosystem focuses on being backwards compatibility" as a new HN story. I'm simply adding additional information to your "Clojure was designed with no backwar(d/t)s compatibility" statement which could be read as "Clojure core/libraries break their own API interface all the time" (like in the JS/NPM ecosystem) which is simply not true.

Just to be clear, I'm not saying this is unique in Clojure, simply making sure that others who read your comment don't read it the wrong way as it was a bit ambiguous.


The context is very clear the comparison to other languages, when it is clearly the fact that Clojure was designed with no backwards compatibility to these mentioned languages. It was not a matter of a list of things on that page, but the break with the prior languages was much more radical.

The 'correction' you made is an entirely different issue.


Standards come about to address compatibility problems, and standards bodies are committees where reps of divergent implementations settle on compromises (or sufficiently vague langugage) to get some compatibility. Python, Clojure, C# etc don't need standards since there haven't been problems wtith competing incompatible variants of the languages out there.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: