title: A variable used in its own definition?
body: <p>An infinite stream:</p>
  
  <p><code>val ones: Stream[Int] = Stream.cons(1, ones)</code></p>
  
  <p>How is it possible for a value to be used in its own declaration? It seems this should produce a compiler error, yet it works.</p>