我一直在玩purescript和信号。我有一段代码
runSignal $ (every 2000.0) ~> logShow
当编译成JS文件(纸浆浏览器)时为
main = do
runSignal $ (every 2000.0) ~> logShow
并在浏览器上执行,按预期工作(每2秒记录一次),但卡在psci控制台上。为什么会这样?任何帮助将不胜感激。
答案 0 :(得分:0)
我在psci中看到了与无休止过程相似的行为。一个简单的例子就是......
module NeverEnding where
import Prelude
import Control.Monad.Eff.Console (log)
import Control.Monad.Rec.Class (forever)
main = forever $ do
log "log"
如果您在psci中加载此模块并运行main
,您将看不到任何输出。从工作流的角度来看,如果你想从控制台测试这样的东西,我建议运行pulp --watch run --main NeverEnding
。 --main
会将您想要的模块设置为主入口点。 --watch
将监视文件更改,并在更改时终止无休止的进程,重新编译并重新启动。