Re: Explain this to me, please
I agree with you Lee, that using 'unsafe' is unsafe but the presence of the keyword makes it easier to mitigate the risks.
So, for example, the devops toolchain can be configured to look for 'unsafe' and flag that code up for further review or extra testing. Or the dev team can be structured so that only a core set of developers work on code that needs 'unsafe'.
These aren't perfect by all means, but they are a lot easier to implement with Rust than the equivalent for C/C++.