Previous post mentioned self/circular references. You can't do that with a `Box`. You can with `Rc<RefCell<List` or `*mut List`, but those options either have a runtime cost, or aren't borrow-checked.
Lack of self-referential types that are both safe and zero-cost is a legit limitation of Rust.
Lack of self-referential types that are both safe and zero-cost is a legit limitation of Rust.