Comment by bcjdjsndon
9 days ago
Cos that worked in the past right? Remember when Devs weren't checking error codes so languages added exceptions that were apparently meant to fix that gap. Except for the reality was a lot of empty try/catch blocks, or the errors just getting ignored anyway.
Same thing will happen to unsafe rust once it becomes ubiquitous and we will be back talking about how to fix the problem of stupid coders
Tools can enable diligence, and tools can discourage negligence. There's an all-or-nothing fallacy at work in the suggestion that tools must be perfect at both of these things to be useful in advancing the craft.
A great deal of Rust code need not ever involve the unsafe block, and in these cases there is no great temptation to stray off this path. This is pretty good, imo.
> A great deal of Rust code need not ever involve the unsafe block, and in these cases there is no great temptation to stray off this path
Rust was an attempt to have the compiler manage memory, but they couldn't crack it, so they had to just push all the failures to conquer c style UB under rusts unsafe keyword...
Good codebases already do what rust is doing with the borrow checker, it's not rocket science.
There's a serious argument for cherry picking rusts good parts and Retrofitting them into a more entrenched language.
>Good codebases already do what rust is doing with the borrow checker, it's not rocket science.
Rust allows you to achieve with syntax what these good codebases achieve through diligence. You're right that it isn't rocket science, but it's demonstrably challenging, given that plenty of people get it wrong.
People are certainly trying to bring more safety to existing languages (in various ways), and that's only a good thing.
2 replies →