why?
Because bash feels clunky to write and work with for anything non-trivial, especially compared to other scripting languages.
Why not another scripting language (no compile necessary)?
Because bash and sh are installed nearly everywhere. Any other scripting language means the user is required to have that installed, and that is far less likely to be the case.
If I could write my scripts in a nice syntax, but be sure my users will be able to use it effortlessly by distributing to them compiled versions, then that would make both of our lives easier!
Thoughts? Are there any languges that do this?
python is usually the next step up in admin land
python is a pretty standard install on linux systems since so many things like you’re talking about use it
Not only that it’s basically everywhere, but even if it’s not, you can compile it using something like nuitka and still use it.
Huh, why doesn’t python just ship this? Managing python installs is annoying as hell.
I would guess mostly because python interpretes are just about everywhere.
Also the binaries compiled with nuitka end up being much bigger in size. A simple script of a few kb can and up in the hundreds of mb when you start compiling the dependencies, so it’s not a perfect solution.
This is about python packaging, like making/getting libraries/apps rather than compiling binaries, but it’s pretty relevant here:
https://chriswarrick.com/blog/2023/01/15/how-to-improve-python-packaging/