我正在编写一些一次性的 Haskell 脚本来解决一些 Project Euler问题。我真的不想编译它们,因为我经常需要进行大量更改,但在某些情况下,我发现堆栈空间已用完。runhaskell
的文档表示以下语法应该增加堆栈空间:
runhaskell +RTS -K5M -RTS Script.hs
这永远不会起作用(在我尝试过的任何排列中)。堆栈大小始终保持为 8,388,608。这很令人抓狂,我在谷歌上没有找到太多帮助。
有什么建议么?我究竟做错了什么?
最佳答案
我猜你正在使用GHC。新发布的 6.10.1 的用户指南第 4 章说:
The only runghc flag currently is -f /path/to/ghc, which tells runghc which GHC to use to run the program.
我没有看到在 http://hackage.haskell.org/trac/ghc 上记录的错误.对我来说似乎很蹩脚。我建议在 irc#ghc 或 cvs-ghc 邮件列表上询问。
在其他 Haskell 编译器/解释器中,似乎只有 nhc98 允许您设置最大堆栈大小。根据您的操作系统,nhc98 可能是一个选项。
关于haskell - 如何使用 runhaskell 增加堆栈大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/275250/