如何阻止Hintell运行时解释程序库Hint崩溃GHC解释器? 当我尝试将模块加载到GHC解释器中时,它会出现“总线错误”,“非法指令”或“分段错误”。这是一个主要问题,而不仅仅是一个烦恼,因为当我使用提示加载本身使用提示的代码时,它也会崩溃我的应用程序。我怀疑这与链接时Hint拖入的大量库有关。
我使用的是Mac OS 10.6.8,GHC 7.0.4版
答案 0 :(得分:3)
不幸的是,你无法阻止它。 ghc和hint使用的ghc api无法处理一些并发用例,主要是那些涉及将包和模块加载到当前上下文中的用例。 ghc api中的全球状态太多了。
答案 1 :(得分:-2)
我通过将函数显式传递给所有加载的代码来解决这个问题。
例如,而不是做
module Go where
import Run
go :: IO ()
go = do
blah blah ....
runFile etc ...
我做了
module Go where
go :: RunFile -> IO ()
go runFile = do
blah blah ....
run runFile etc ...