What is it that draws you to Rust? What's so special about it in your eyes?
#rustlang #rustaceans #rust
As a crusty embedded systems C dev, Rust makes an entire ecosystem of problems just, disappear.
I work in the aerospace industry with an emphasis on #SPAAACCCEEEE!!!!
Memory safety alone is probably the largest driving factor in the general shift towards the language for this industry.
@PointyFluff is memory safety more of a concern in your industry than in others?
Arguably, yes.
Think about like this. Memory bugs are HUGE in the C world, they are an unknown and often an unknown unknown; which, in space, is problematic at best.
So when talking to an ancient grey-beard engineer the thing that usually sticks-out most in their memories is that it is memory safe, at compile time, with no run-time GC.
Then when they actually start touching the language; that's when the rest of it hits. The build system, the linter, the dependency management...
Also, I seem to have a new, *wow*-toy in my rust-bag.
There's a little program on crates called 'aichat', which is just an interface to ollama, and some of my fellow enguhners saw me using that to ask a bash question (I forgot how to Ctl+x-Ctl+e, lol)
and they went wtf is that, to which I explained, what it was and how to get it (cargo), which quickly descended into "tell us about rust!"
@pash Because, compared to other systems languages, Rust is very easy.
The difficulty of Rust is that one needs to learn about ownership and lifetime. That's the "learning cliff". Once that "clicks", that's almost all of the difficulty of Rust, and from there on it's smooth sailing.
Other languages have no such learning cliff, but a never-ending list of weird special cases, undefined behaviour, memory management pitfalls...
Also, Rust has an elegant and easy to read syntax.
@pash Its a language which feels internally consistent. It never feels to me like a synyax feature doesn't fit, or something has a weirdly different way of working. Everything that contains code is a expression. Every expression evalutes to a specific type (which can be Never for endless loops). Patterns match the constructor. Enum variants correspond to tuples/structs nicely.
it just feels like things fit together properly.
@pash The thing I like about rust is that it helps you learn rust. Non TLDR version here: https://orville.thebennettproject.com/articles/why-i-learned-rust/