4 ms·
> So, you will effectively break your code if you try adding any of these. I don't follow, isn't this just bringing in features from a later version of the lan
by squeaky-clean 3y ago
> So, you will effectively break your code if you try adding any of these.
I don't follow, isn't this just bringing in features from a later version of the language and complaining they don't work? Pattern matching doesn't work in Python 3.9, but I wouldn't say it "effectively breaks your code" just because you try them in python3.9
You also don't have to add them, they're optional.
- wheelerof4te 3y agoIntroducing pattern matching to Python, in a minor version no less, almost created another language inside Python that you have to learn now. New typing syntax outside of the "typing" module did the same. People governing the development of Python forgot what backwards compatibility of a programming language means.
- squeaky-clean 3y agoYou don't need to learn any of those, and they don't break pre-existing code. You can run code written for Python3.2 in 3.10. You can't run code written for Python3.10 in Python3.2. That's what backwards compatibility means. It has nothing to do with new features that only affect themselves. Also Python predates SemVer, so it doesn't use major.minor.patch. 3.10 is not considered a minor update.