Não é possível usar para compreensão para mapear mais de lista dentro do futuro

Eu tenho esse problema que eu tenho que trabalhar o tempo todo. Eu não posso mapear sobre algo que está contido dentro de um futuro usando uma compreensão.

Exemplo:

import scala.concurrent.ExecutionContext.Implicits.global
import scala.concurrent.Future

val f = Future( List("A", "B", "C") )
for {
  list <- f
  e <- list
} yield (e -> 1)

Isso me dá o erro:

 error: type mismatch;
 found   : List[(String, Int)]
 required: scala.concurrent.Future[?]
              e <- list
                ^

Mas se eu fizer isso, tudo funciona bem:

f.map( _.map( (_ -> 1) ) )

Se eu não for capaz de fazer isso usando um para compreensão, é a razão que funciona no meu outro exemplo que eu não flatmap? Estou usando o Scala 2.10.0.

questionAnswers(4)

yourAnswerToTheQuestion