Il codice successivoScala per-comprensione inferenza di tipo
def f(chars: List[Char]): List[List[Char]] = chars match {
case Nil => List(Nil)
case x :: xs => for {
v <- f(xs)
} yield List(x) :: v
}
dà il messaggio di errore
- type mismatch; found : List[List[Any]] required: List[List[Char]]
Ti prego, aiutami a capire perché 'per' sceglie la più generale Qualsiasi invece di Char qui? Quale argomento nelle specifiche del linguaggio dovrei leggere? Grazie.