Scala y referencias [duplicado]
Posible duplicado:
Scala: referencias hacia adelante, ¿por qué se compila este código?
object Omg {
class A
class B(val a: A)
private val b = new B(a)
private val a = new A
def main(args: Array[String]) {
println(b.a)
}
}
El siguiente código imprime "null". En java. La construcción similar no se compila debido a una referencia directa no válida. La pregunta es: ¿por qué se compila bien en Scala? ¿Es eso por diseño, descrito en SLS o simplemente error en 2.9.1?