In general, you are right. Once you explain to the borrow check you are doing the right thing then you have a fair level of confidence in it being right.
I think the point from the article is if it is worth it. Give the single sentence in the article about a list and pointer. There are various ways to do it safely (and ways to do it unsafely like you pointed out) and sometimes it might be ok to put the onus of that onto the developer and validated with valgrind, asans, and unit tests. For some this is far more enjoyable than worry about the borrow collector.
It’s all a trade off and it’s ok to have difference criteria when approaching a problem like a cli tool or even a business critical service. The problem becomes when Rust people claim that the borrow checker is the only way and we all roll our eyes.
In general, you are right. Once you explain to the borrow check you are doing the right thing then you have a fair level of confidence in it being right.
I think the point from the article is if it is worth it. Give the single sentence in the article about a list and pointer. There are various ways to do it safely (and ways to do it unsafely like you pointed out) and sometimes it might be ok to put the onus of that onto the developer and validated with valgrind, asans, and unit tests. For some this is far more enjoyable than worry about the borrow collector.
It’s all a trade off and it’s ok to have difference criteria when approaching a problem like a cli tool or even a business critical service. The problem becomes when Rust people claim that the borrow checker is the only way and we all roll our eyes.