I think it should also have the comment it's replying to for context but, otherwise, it's a fun quote:
It is unsafe to cut the ketchup bottle in two so that two people can squeeze the two portions at the same time, but you might need to do that for a particularly large bottle of ketchup.
Meta-Comment: I started this topic as someone completely uninvolved in the rust project. It's very reassuring seeing the nature of the response. Even knowing how fantastic the Rust community is, I was still prepared to be met with at least a small element of condescension given the nature of this issue. I haven't felt any sense of it. It's amazing. Anyone that has impact on the community culture deserves credit: This sort of experience doesn't come from nowhere. It comes from a long history of many people nudging things in the right direction.
Thank you.
In many cases, it is possible to completely rearchitect the underlying code while leaving the public API as-is, and without introducing new bugs. I've literally never had such a liberating experience with refactoring until Rust.
In other words, I have never been so productive in any other language. Dynamic languages like JavaScript and Python are the least productive by far . Code runs, tests pass, put it into production and... uncaught exception! Time to rollback and redo that whole dance AGAIN . With Rust, we take care of all of that crap while actually writing the code the first time. No more surprise 3am wake up calls. That is productivity.
mate it's like when you and the lads are on discord givin em classic bants but you wanna bang out some code and you're thinkin gems or eggs but your mate Yehuda who's a LEDGE AND A HALF says nah mate let's grab some crates and get our borrows checked and you're like SORTED
This viewpoint is very controversial, and I have no capacity to debate it with anyone who disagrees with me. But Rust has a very powerful macro system, so I donβt have to.
The reason why I think it makes sense to prioritize perf over everything except safety is that, if Rust is not the fastest high-level programming language, important systems will be implemented in a faster, unsafe language.
I'm a snowboarder that's learning how to ski. I have no idea why I have this extra thing on my other foot or poles in my hands. Also, I keep falling. I know eventually it gets better.
I thought Steve's comment below was really inspiring and belies the "can do" attitude of the Rust project. Not sure how you'd capture it in a single quote though.
What's special about UB is that it attacks your ability to find bugs, like a disease that attacks the immune system. Undefined behavior can have arbitrary, non-local and even non-causal effects that undermine the deterministic nature of programs. That's intolerable, and that's why it's so important that safe Rust rules out undefined behavior even if there are still classes of bugs that it doesn't eliminate.