Scala: comportamiento extraño en la coincidencia de patrones `for` para el caso None
Comportamiento extraño enfor
coincidencia de patrones de ciclo:
scala> val a = Seq(Some(1), None)
a: Seq[Option[Int]] = List(Some(1), None)
scala> for (Some(x) <- a) { println(x) }
1
scala> for (None <- a) { println("none") }
none
none
¿Por qué en el segundo ejemplo dos salidas'none'
producido? Quizás este ejemplo sea sintético y no práctico, pero ese comportamiento no es previsible. ¿Es este error o característica?