Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What I meant, is frameworks like Django, Flask, and PyTorch. Also, libraries like Pandas, SciPy, and NumPy. That's what Clojure is missing the most for an average software engineer: simple and easy choices, that can remain relevant for decades.


So what you mean by "stable" is in the names only, but not in substance.

What I mean by stable, is that my code remains working after I upgrade the dependencies, which is definitely NOT the case for python frameworks, but it is mostly the case for Clojure libraries.

In Clojure, Web related things have remained relevant for a long time as well. For example, I do not anticipate that the standard things such as Ring, Reagent, Re-frame, etc. are going to change any time soon.

If you have not used Clojure, you just have not experienced what a stable ecosystem looks like. You have too used to changing your own code just because of a dependency bump. This is very rare in the Clojure world, but a norm outside.


Yes, these are two different meanings of "stable".

In Clojure, "stable" means that your code remains working after the upgrades of its dependencies.

In Python, "stable" means that the dependencies themselves remain upgraded.

I am not suggesting that one thing is better than the other. What I meant, is that one thing is more attractive than the other for an average developer.

Currently, there are very few Clojure libraries from a decade ago that are still being actively maintained today.


Clojure itself is not much more than a decade years old. Even that, there are quite many libraries that have stayed all these year, e.g. the standard things I mentioned, such as Ring, Reagent, etc.

As I have already mentioned, "actively maintained" is not a requirement for many Clojure libraries. Many are just done, as in "nothing needs to be changed".

As long as they are still working, why do you want to update them? As I mentioned, many production code bases in Clojure contain libraries that have not been updated for ages, but they still work. Why fixing things that are not broken?




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

Search: