Why writing a linked list in safe Rust is so damned hard
&gt; I find a bit of solace in the fact that implementing a data structure like this in a non-garbage collected language <i>without</i> Rust is also quite tricky<p>What? No it isn&#x27;t. The entire problem here is incorrectly assuming that &quot;A owns B&quot; implies &quot;A has a pointer to B&quot;. I don&#x27;t know if this is a Rust-imposed constraint, but it certainly isn&#x27;t a logically necessary one. Just do what C++ (and C#, etc.) do: the data structure (std::list, etc.) owns all the nodes, and the nodes merely reference each other. The nodes don&#x27;t own their siblings. It makes sense and it doesn&#x27;t get tricky.