以下代码在 Chrome 中执行,打印后失败
7492
:
module Main where
import Prelude
import Effect (Effect)
import Effect.Console as Console
import Data.Array as Array
import Data.Traversable (for_)
main :: Effect Unit
main = do
for_ (Array.range 1 10000) Console.logShow
我在这里做错了什么?如何迭代较长的数组而不导致堆栈溢出?
代码使用
spago build
编译并使用 parcel
运行。
package.json
的片段:
"devDependencies": {
"parcel": "2.7.0",
"purescript": "^0.15.4",
"spago": "^0.20.9"
}
UPD:在 Orion 中,执行在 33793 次迭代后中断。 Safari 达到 8000,速度越来越慢。这是脚本的“生产”版本 —
spago bundle-app --to prod/index.js && parcel build prod/index.html
。
Effect.foreachE (Array.range 1 100000) Console.logShow
似乎正在工作。