[[Rust]] [[References are also immutable by default]] [[Mutable references are safe because they prevent aliasing]] [[Ownership]] [[Dereferencing is to access the data behind a pointer]] --- Creating a reference is done with an ampersand. It creates a pointer to another variable in the stack, which could be a pointer to something on the heap. This is called borrowing. A reference is a non-owning pointer; so if we create a reference to a Box we can safely have it discarded and continue using the box because the heap data is not deallocated.