title: Add two vectors without mutability
body: <p>I want to add two Vectors which will give me another vector as a result without mutation of the existing ones:</p>
  
  <p>I found a related question, but it does mutate the first one, which I don't want.<br>
  <a href="https://stackoverflow.com/questions/40792801/best-way-to-concatenate-vectors-in-rust">Best way to concatenate vectors in Rust</a></p>
  
  <pre class="lang-rust prettyprint-override"><code>let vec1: Vec&lt;i32&gt; = vec![1, 2, 3];
  let vec2: Vec&lt;i32&gt; = vec![4, 5, 6];
  let vec3: Vec&lt;i32&gt; = ??; // expected vector equal to vec![1, 2, 3, 4, 5, 6];
  </code></pre>