Re:Uber Go Style Guide
by sanxiyn on Friday October 11, 2019 @10:13PM
(#21230155)
How is it a fake problem? Uber is copying slices it doesn't need to copy, suffering significant performance penalty, because it is too error prone in Go. Rust completely prevents this error.
[ Parent
| on HN ]
It's a trade-off. Programmer's productivity versus theorically perfect ownership handling.
I think that rust fills the needs of applications with extreme requirements. A browser is in that niche. Not all software is.
Thus most of the time you don't have to inflict yourself the pain to work with it.
Ownership is different than mutability. Yes, immutability would prevent those errors.
The point is that ownership also prevents these errors. If there are never two simultaneous mutable references to something, then you can get the advantages of immutable data structures without paying the performance penalty.
We’re having a semantic debate. Ownership appears to mean something different to Rust folks, which is fine. I agree that Rust’s borrow checker (what you appear to be referring to as ownership or the enforcer thereof) prevents errors and is generally very cool. It’s just not what I understand ownership to mean.