title: Is there a difference between a linked list implemented using Box<T> and &'a T?
body: <p>I'm struggling trying to understand the difference between these two implementations of a linked list. This first version is the one presented in the Rust book using a <code>Box&lt;T&gt;</code>:</p>
  
  <pre><code>enum List {
      Cons(i32, Box&lt;List&gt;),
      Nil,
  }
  </code></pre>
  
  <p>This is the other implementation I was thinking of:</p>
  
  <pre><code>enum List&lt;'a&gt; {
      Cons(i32, &amp;'a List&lt;'a&gt;),
      Nil,
  }
  </code></pre>
  
  <p>Is there any important difference between the two, or are they equivalent in this case?</p>