Making the `mut` keyword less misleading

It's easier to think: &mut T is mutable and therefore it's exclusive. Rust has a philosophy that "mutable => exclusive", and so the natural interpretation is &mut means "it's mutable", which also implies it's exclusive because of Rust's philosophy.

If you think that way, there is no inconsistency.

It's a bit unfortunate that there is no other way to make an exclusive reference than by making it mutable, but that's a different issue. That feature doesn't exist, but it could logically exist. Maybe some day it will be added, it would make the distinction clearer.

5 Likes