title: Unexpected result with splat operator
body: <p>I have a hash, whose values are an array of size <code>1</code>:</p>
  
  <pre><code>hash = {:start =&gt; [1]}
  </code></pre>
  
  <p>I want to unpack the arrays as in:</p>
  
  <pre><code>hash.each_pair{ |key, value| hash[key] = value[0] } # =&gt; {:start=&gt;1}
  </code></pre>
  
  <p>and I thought the <code>*</code>-operator as in the following would work, but it does not give the expected result:</p>
  
  <pre><code>hash.each_pair{ |key, value| hash[key] = *value } # =&gt; {:start=&gt;[1]}
  </code></pre>
  
  <p>Why does <code>*value</code> return <code>[1]</code> and not <code>1</code>?</p>