5 ms·
I’m sorry, I’m not sure how the quote is relevant to the comment you are replying. Mature languages don’t tend to break working code. That was true when the qu
by RandomThoughts3 2y ago
I’m sorry, I’m not sure how the quote is relevant to the comment you are replying.
Mature languages don’t tend to break working code. That was true when the quote was pronounced and that’s still true today.
Python is fairly unique in its propensity to be an unstable target. I personally can only think of the JS ecosystem has being worse but even then that’s mostly a library thing as the VM will run even the oldest JS code you can find. I wish the same could be said of Python.
- zo1 2y agoI honestly don't know where this "python is brittle" comes from. I've been using python heavily since the 2.5 days, and I can count on maybe 2 hands the times I've had a library or dependency break on me. Most of those were due to weird library function signature changes, that type-hints have now arguably fixed anyways.
- aragilar 2y agoI avoid type hints (and instead use other linters/static analysis tools like pylint) because type hints break between Python versions...
- RandomThoughts3 2y ago> I honestly don't know where this "python is brittle" comes from. From Python being brittle? It’s one of the rare language which deprecates and removes API between minor versions. They have to provide migration guides with every release.
- KaiserPro 2y agocan you give an example? I'm struggling to find an example of something removed in a minor version.
- zo1 2y agoI've yet to have any python feature/function/API change on me between minor versions. Yes, the big 2->3 thing did happen, and there were a few breaking changes that came along with that. And I've been the semi-proud owner of codebases that had to simultaneously cater to versions 2.5, 2.7 and 3+ at the same time. Other than the print statement, new forms of try-catch statements and the obvious addition of type-hints eventually, I've always been able to make the code cater to all three versions. Eventually, 2.5 fell away, then 2.7 fell away, and now it's just 3+, which has been a breeze. These days I'm excited to install the latest version, and I don't even worry about any breaking changes. I'm also the type of person that doesn't do version-pinning as I think the concept is an anti-pattern that came from the JS world as a way to manage the chaos borne-about by the constant API changes, thousands of tiny libraries, and library dependency updates that it circularly-co-caused.