3 ms·
I agree with you from the developer point of view. But you should consider the point of view that other people might want to compile your software. Python is a
by superkuh 2y ago
I agree with you from the developer point of view. But you should consider the point of view that other people might want to compile your software.
Python is a great example of a software community that has enormous trouble due to always changing the languae and using new features. It's pretty much infeasible to run a python program on your system python these days. Every single python program requires it's entire own custom python in a container.
- kstrauser 2y agoI'm only sympathetic to a point. If I distributed C++ code to paying customers who wanted to compile it locally, I'd surely take their needs into account. For anything I was releasing as FOSS, deal with it. For instance, my nearby server is running Debian 12/Bookworm with GCC 12. According to https://gcc.gnu.org/projects/cxx-status.html https://gcc.gnu.org/projects/cxx-status.html, that supports nearly all of C++20. If you can't be bothered to upgrade to your system every few years, I'm not going to make more than 0 effort to cater to your ancient compilers. In Python terms, today I wouldn't break a sweat to manage unsupported Python versions (https://devguide.python.org/versions/ https://devguide.python.org/versions/). If my stuff runs on an old Python 3.8 system, right on! I wouldn't deliberately break it or anything. But if something came along in 3.9 that makes my life more pleasant, I wouldn't hesitate to use it. I also vehemently disagree with your Python characterization. There are any number of common, well-supported ways to easily install arbitrary versions on your system, including pyenv and uv. I have multiple versions installed on the laptop I'm typing this on. I do zero development inside containers: all my work runs directly on the host. And yet, none of them conflict with each other at all.
- superkuh 2y agoThe idea that you have to have multiple pythons is weird, new, and despite what you say about not breaking a sweat, vastly more complex and time consuming than how python used to work before it became popular. It's broken now and people have grown used to the brokenness, even integrated it into their workflow and come to believe that this is good. To me it sounds like spacebar heating: https://xkcd.com/1172/ https://xkcd.com/1172/
- jcelerier 2y ago> But you should consider the point of view that other people might want to compile your software. Every platform provides a very easy way to install the latest version of clang. > It's pretty much infeasible to run a python program on your system python these days. System python shouldn't be a thing in the first place. If you want to run some python program in 2025 you just uv venv --python 3.whatever
- superkuh 2y ago> System python shouldn't be a thing in the first place. Sour gapes. The idea that "system python shouldn't be a thing" is really radical and massive change from the status quo of languages. Especially interpreted languages. There are plenty of languages that work just fine on system interpreter/compiler with no need of an entire language for each program. Perl is one example that is very comparable to python. The important difference is that Perl hasn't been split into hundreds of different languages like python due to popularity. > Every platform provides a very easy way to install the latest version of clang. Once again sour grapes. Abandoning the idea of your system compiler working for C++ is wild.
- jcelerier 2y ago> Once again sour grapes. Abandoning the idea of your system compiler working for C++ is wild. why? most operating systems (Windows, macOS, Android, iOS etc) don't even have a system compiler, it's a separate app that you install (and for which you can thankfully install multiple versions in parallel, unlike the stupid linux idea that every app should only ever have one version installed at any given time).