Os futuros não são executados antes do término do programa

Eu estava tentando reproduzir o exemplo no novo Scala 2.10recurso de futuros. O código que usei é:

<code>import scala.concurrent.Future
import scala.concurrent.future

object Test {
    def main(args: Array[String]) {
     println("Test print before future")
     val s = "Hello"
     val f = future {s + " future!"}
     f onSuccess {case v => println(v)}
     println("Test print after future")
    }
}
</code>

Em vez de imprimir:

<code>Test print before future
Hello future!
Test print after future
</code>

Ele simplesmente imprime:

<code>Test print before future
Test print after future
</code>

Alguma idéia do porque eu tenho esse comportamento? Minha versão do compilador scala é 2.10.0-20120507.

questionAnswers(3)

yourAnswerToTheQuestion