I think it's because the type system is "a relatable master", while the thought processes of the optimizer, when we're allowed to observe them having unexpected effects, are that of an eldritch abomination.
Speaking of languages, it's time to halt starting any new projects in C/C++ and use Rust for those scenarios where a non-GC language is required. For the sake of security and reliability. the industry should declare those languages as deprecated.
— Mark Russinovich, CTO of Microsoft Azure
it's not Perl
Linus Torvalds complimenting Rust, source: Next steps for Rust in the kernel [LWN.net]
Rust isn't that terrible
Also Torvalds, from the same quote as above. This is high praise indeed coming from Linus.
I would say the benefits I saw from the start were that you didn’t have to think about race conditions and memory corruption, and memory safety in general. You know, just writing correct and robust code from the start. So that was basically my first impression, but now I have also come to realize that there are many other aspects. You get just as big benefits from the side effects of that first aspect.
Semver has its philosophy, but a pragmatic approach to versioning is:
<upgrades may break API> . <downgrades may break API> . <fine either way>
people don’t realize that the reason their idea doesn’t work is not because the idea is wrong, it’s because the language (or, often, the compiler) is limited.
By Niko Matsakis in this blog post.
"But we can do it ourselves," say some hardcore kernel kings. "Look, some of this has been going 30 years without a problem." Indeed. But because an expert surgeon can whip out a spleen safely doesn't mean you can sell scalpels on eBay with "Instant Appendectomy" instruction leaflets. Rust reduces risk without compromising performance, which means more people can write better code faster. Who doesn't ache for this?
-- Rupert Goodwins @ Rust is eating into our systems, and it's a good thing • The Register
It’s not Rust that you are learning. It’s your goddamn program’s behavior. Rust just does not let you cut that corner.
BurntSushi is a super experienced programmer who always seems to know what’s right
Shepmaster occasionally pops up to keep things level, and provides definitive answers and edits to all stackoverflow questions
Epage is the ecosystem guy thanklessly maintaining the things that make the magic of cargo possible
Dtolnay is an AI written in rust with the sole purpose of improving rust.
/u/trevg_123 - here
Diagnostics like [
rustc's] are why writing Rust isn't just another "git gud" Dark Souls-style experience.
I like the "as long as...", very nicely worded.
There's a lot of weird debate about whether Rust in the kernel is useful or not... in my experience, it's way more useful than I could've ever imagined!
I went from 1st render to a stable desktop that can run run games, browsers, etc. in about two days of work on my driver (!!!)
All the concurrency bugs just vanish with Rust! Memory gets freed when it needs to be freed! Once you learn to make Rust work with you, I feel like it guides you into writing correct code, even beyond the language's safety promises. It's seriously magic!
There is absolutely no way I wouldn't have run into race conditions, UAFs, memory leaks, and all kinds of badness if I'd been writing this in C.
In Rust? Just some logic bugs and some core memory management issues. Once those were fixed, the rest of the driver just worked!!
Crater answers the age-old question: if a change breaks in the forest and no one is around to notice, is it really a breaking change?
No, says crater.
Not posted this week, but I found it quite funny.
I think it's worth noting that the fact that this program fails to compile whereas the analogous Python runs but gives the wrong answer is exactly what Rust's ownership and borrowing system is about.
While helping a friend with some Rust code. They got a sequence of helpful error messages:
Wow, Rust really knows how to make a man feel good about himself.
Y'all low level people live in a wild world
If all the bikeshedding happens once in a rust team somewhere, they can spare all us pain of non-productive discussions.
Don't take away the fun part :-\
Given that you're a team member, I'm going to push back on this quote as well. Not because bike-shedding is fun per se, but because community involvement is one of the great things about Rust.
The wider community may see problems and solutions a focused team do not, and have use-cases they haven't considered. The more language evolution leans towards fiat-by-team, the more concerned and frustrated I get. And I do feel it's increasing with time.