2013-01-18 32 views
2

Scala 2.10中的continuations插件的狀態是什麼?我有點困惑。下面的設置是在Akka 2.2-SNAPSHOT documentationScala 2.10和Continuation(akka-dataflow)在sbt控制檯中

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 

我收到一條錯誤的延續插件是啓用。


什麼是在Scala 2.10中啓用延續的正確方法?

特別是:我怎樣才能進入sbt console並試用上面的例子flow。看來我還需要確保爲REPL啓用了編譯器插件。


編輯:本scalacOptions進入確實工作,看來我有一個錯字。

+0

基本上我在同樣的情況[這個郵件列表海報](https://groups.google.com/forum/#!msg/simple-build-tool/Uj-7zl9n3f4/oC8Nl5UdFIIJ),只有Scala 2.10和sbt 0.12.1;根據馬克哈拉當時,它「應該沒有進一步配置」 –

回答

4

有了這個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) } 
+0

Wooop。太愚蠢了,我認爲''-P:continuations:enable「'中有一個拼寫錯誤,給我提供了'bad option'消息。現在正在重試,而且確實有效(也與Akka數據流一樣)。 –

相關問題