101
Is there any use in learning an "easy" programming language?
(sh.itjust.works)
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Follow the wormhole through a path of communities !webdev@programming.dev
Dnf5 is written in C++
My point is that I wouldn't call it a backbone. There are always alternatives in different languages, and python version is oft not the default or main one. C(++) is the backbone of Linux.
Except Fedora I think, iirc they use python packages often.
Sure, I think we can just ignore the fact that the Red Hat Core package manager was driven by Python for almost 20 plus years and only recently, as of two years ago, switched to C++.
You are correct at seeing C as a backbone, but most tools, especially early tools were written in a language like Python. Its easy to prototype and adopt.
I guarantee you if I go through a list of system tools that every Linux distro is dependent on, including something like a package manager, which the linux os is absolutely dependent on You would be genuinely surprised by the amount of tools written in a language like Python or Ruby.
Also, a package manager is not core to a Linux distribution, Really? That seems like stretch.
Yes, you can compile everything from source. Very few people do.
My point is that calling Python a backbone of Linux because 2 package managers out of many are in Python is a stretch like from Kilimanjaro to Kuala Lumpur.
(AFAIK only Gentoo has the package manager written in Python, second one being historical DNF).
APT, dnf, pacman, zypper, flatpak, snap, nix, yay, pikachu and akukaracha (last two are me being facetious :P) are not written in Python.
Let's not be obtuse, I was simply using one tool as an example. There's a lot more, and there's a lot of other reasons why Python is critical as a component of a Linux system.
Let's just start with systemD. Did you know that systemD requires Python to build? GTK4 has the same requirement.
Systems that have replaced the Python component often use a different language like Lua in their place, like alpine Linux.
Python is literally the glue that people use to bind all of your C programs together because it can be done quickly, easily, and efficiently unlike C and C++.
You literally cannot use a modern Linux system without Python. It's just straight up not possible Unless you're using something that is specifically stripped and built for the removal of Python. It is assumed for a ton of packages and scripts, including major component tools like Ansible, which are critical in the commercial environment.
You obviously used a wrong example.
Android.