69
What do people love about Rust?
(blog.rust-lang.org)
Welcome to the Rust community! This is a place to discuss about the Rust programming language.
Credits
As someone who uses a lot of shell scripts and learning Rust, do tell more.
One of the simplest tricks is that you can throw down a function, which you can call with a command like e.g. this:
run("cat /etc/os-release | grep NAME")by constructing a Command like so:
There's proper libraries to make running commands even easier and more robust, but if you don't want to pull in a library, that's really easy to write out ad-hoc and gets you 95% of the way there, with shell piping and everything.
You can do this in all programming languages that exist...
That's kind of the point. You can do it in most languages, so why use a shitty one like Bash? Use a good language like Rust!
Also there are aspects of languages that make many languages less suitable for this application though. For example Python, because you can't use third party dependencies (or at least you couldn't; I think
uvhas an equivalent ofcargo scriptnow). Java would be a pretty awful choice for example.Python is actually super known for its batteries included approach, it has modules for everything. Simply do pip install anything. But best practice is to use a python virtual environment and install packages into that one. Cargo does this by itself in each project and doesnt install modules globally.
But python code is so much easier to write. Its basically almost English and the syntax is easy. Rust... Not so much. Its quite ugly.
Its a systems programming language. Designed to be fast to execute. Its one of the slowest to write code in. But sure, with Ai, you can just ask for a rust script and it will run.
Not everything. PyYAML, Pydantic and Typer are things I commonly want in scripts that aren't in the standard library.
It's more than "best practice". It's mandatory on many recent Linux distros. And yeah setting up a venv and installing dependencies is not something you want to have to do for each script you run.
It depends what your goal is. If you want robust code that works reliably then I would say Rust has the edge still. Yes it will take longer to write but you'll spend way less time debugging it and writing tests.
Oh yeah, I'm not saying this is what makes Rust special. Rust's strength in comparison to Bash is that it's a lot more competent at control flow and structuring programs. But yeah, virtually any programming language is at least better at that than Bash, so whichever one you're most comfortable with, is probably the best choice. This trick just allows you to make use of Bash's biggest strengths, which is easily running commands and piping between commands, while also having the competent control flow and structuring of your programming language of choice.