title: Why do Arrays require ClassTags but collections like List do not?
body: <p>This works fine:</p>
  
  <pre><code>def x[A](a: A) = List(a)
  </code></pre>
  
  <p>No ClassTag available for A:</p>
  
  <pre><code>def y[A](a: A) = Array(a)
  </code></pre>
  
  <p>But of course this is kosher:</p>
  
  <pre><code>def y[A : ClassTag](a: A) = Array(a)
  </code></pre>
  
  <p>What gives?</p>