title: Difference between Scala's existential types and Java's wildcard by example?
body: <p>A bit more specific than Stack Overflow question <em><a href="https://stackoverflow.com/questions/292274/what-is-an-existential-type">What is an existential type?</a></em>, what is the difference between Scala's <em>existential types</em> and Java's <em>wildcard</em>, prefereably with some illustrative example? </p>
  
  <p>In everything I've seen so far, they seem to be pretty equivalent.</p>
  
  <p><em>A few references. Martin Odersky <a href="http://www.artima.com/scalazine/articles/scalas_type_system.html" rel="nofollow noreferrer">mentions them</a>; Google's <a href="http://scalada.blogspot.com/2008/01/existential-types.html" rel="nofollow noreferrer">top hit for my question</a></em>:</p>
  
  <blockquote>
    <p><strong>MO:</strong> The original wildcard design ... was inspired by existential types. In fact the original paper had an encoding in existential types. But then when the actual final design came out in Java, this connection got lost a little bit</p>
  </blockquote>