title: scala - Any vs underscore in generics
body: <p>What is the different between the following Generics definitions in Scala:</p>
  
  <pre><code>class Foo[T &lt;: List[_]]
  </code></pre>
  
  <p>and </p>
  
  <pre><code>class Bar[T &lt;: List[Any]]
  </code></pre>
  
  <p>My gut tells me they are about the same but that the latter is more explicit. I am finding cases where the former compiles but the latter doesn't, but can't put my finger on the exact difference.</p>
  
  <p>Thanks!</p>
  
  <p><strong>Edit:</strong></p>
  
  <p>Can I throw another into the mix?</p>
  
  <pre><code>class Baz[T &lt;: List[_ &lt;: Any]]
  </code></pre>