title: Why are Buffer and List objects equal (even they are from different classes)?
body: <pre><code>scala&gt; import scala.collection.mutable.Buffer
  import scala.collection.mutable.Buffer
  
  scala&gt; val b = Buffer(1, 2, 3)
  b: scala.collection.mutable.Buffer[Int] = ArrayBuffer(1, 2, 3)
  
  scala&gt; val l = List(1, 2, 3)
  l: List[Int] = List(1, 2, 3)
  
  scala&gt; b == l
  res1: Boolean = true
  </code></pre>
  
  <p>I was wondering, why the Buffer and List object can be compared with a result of true ?</p>
  
  <p>I always thought, that because they are from different classes, they <em>have</em> to be false when compared. Can someone explain me, why it is implemented this way ?</p>