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

Какъв е статусът на плъгина за продължения в 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 и без специални конфигурации (премахнете всичко по-горе) и Akka 2.1.0:

import concurrent.ExecutionContext.Implicits.global
import akka.dataflow._

flow { "Hello world!" } onComplete println

Получавам грешка, показваща, че приставката за продължения не е активирана.


Какъв е правилният подход за активиране на продълженията в Scala 2.10?

По-специално: Как мога да вляза в sbt console и да изпробвам горния пример с flow. Изглежда също трябва да се уверя, че приставката за компилатор е активирана за REPL?


РЕДАКТИРАНЕ: Записът scalacOptions работи, изглежда имам правописна грешка.


person 0__    schedule 18.01.2013    source източник
comment
По принцип съм в същата ситуация като това плакат с пощенски списък, само със Scala 2.10 и sbt 0.12.1; според Марк Хара по това време, трябва да работи без допълнителна конфигурация   -  person 0__    schedule 18.01.2013


Отговори (1)


С това build.sbt:

autoCompilerPlugins := true

scalaVersion := "2.10.0"

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

scalacOptions += "-P:continuations:enable"

следният пример само за продължения (без Akka) работи в REPL:

scala> import scala.util.continuations._

scala> reset { val i = shift { body: (Int => Unit) => body(5);
     | println("done") }; println(i) }
person Mark Harrah    schedule 18.01.2013
comment
Уау. Твърде глупаво, мисля, че имах правописна грешка в "-P:continuations:enable", давайки ми съобщението "bad option". Сега се опитва отново и наистина работи (също и с Akka-dataflow). - person 0__; 18.01.2013