Scala 2.10 и продолжения (akka-dataflow) в консоли sbt


Каков статус плагина continuations в Scala 2.10; я немного запутался. Следующая настройка находится в документации Akka 2.2-SNAPSHOT :

autoCompilerPlugins := true,
libraryDependencies <+= scalaVersion {
  v => compilerPlugin("org.scala-lang.plugins" % "continuations" % "2.10.0")
},
scalacOptions += "-P:continuations:enable",
Во-первых, scalacOption больше не работает с 2.10, а scalaVersion фактически не используется в зависимостях библиотеки. Если я наивно иду вперед с 2.10 и без особых конфигураций (убираю все вышесказанное), то и Акка 2.1.0:
import concurrent.ExecutionContext.Implicits.global
import akka.dataflow._

flow { "Hello world!" } onComplete println

Я получаю ошибку, указывающую, что плагин continuations не включен.


, что то, что является правильным подходом для обеспечения продолжения в Scala 2.10?

В частности : Как я могу зайти в sbt console и попробовать приведенный выше пример с flow. Кажется, мне также нужно убедиться, что плагин компилятора включен для REPL?


EDIT : запись scalacOptions действительно работает , похоже, у меня была опечатка.

1 2

1 ответ:

С этим build.sbt:

autoCompilerPlugins := true

scalaVersion := "2.10.0"

libraryDependencies +=
  compilerPlugin("org.scala-lang.plugins" % "continuations" % "2.10.0")

scalacOptions += "-P:continuations:enable"

В REPL работает только следующий пример продолжения (без Акка):

scala> import scala.util.continuations._

scala> reset { val i = shift { body: (Int => Unit) => body(5);
     | println("done") }; println(i) }