2011-05-19 62 views
4

据我所知shiftreset只是库函数。所有延续的东西都是作为库实现的,Scala编译器没有做任何特殊的工作来转换reset块中的代码是否正确?关于Scala延续的问题

+0

要使用'shift'和'reset',你必须使用continuations编译器插件。但是我无法告诉你插件完成了什么。 – 2011-05-19 06:45:42

+0

如果尝试在没有插件的情况下编译,将会出现此错误:''此代码必须在启用Scala延续插件的情况下编译“'看看http://stackoverflow.com/questions/2683195/how-do-i -enable-延续,上阶,2-8 – 2011-05-19 06:53:22

回答

9

不,事实并非如此。部分支持位于库中,另一部分位于编译器插件中。编译器插件将重置内的代码转换为延续传递表单。您需要在构建过程中使用此编译器插件。在运行时,scala标准库就足够了。