这与stack ghci not loading up local modules?的问题相似,但并不完全相同。
我有一个包含Main.hs和Shapes.hs文件的目录,其中Main.hs对模块形状有一个引用。
如果我跑了
ghci Main.hs
一切都很好。这是7.10版。
但如果我运行第8版,
堆栈ghci :加载Main.hs
我知道错误了
一个编译主( Main.hs,解释)中的一个 Main.hs:3:1:错误: 未能加载“形状”的接口 它不是当前程序中的模块,也不是任何已知包中的模块。 失败,模块加载:无。
我在链接上尝试了解决方案
load Shapes.hs Main.hs
但还是不起作用。我知道错误了
2种编译形状中的1种( Shapes.hs,解释) 2个编译Main中的2个( Main.hs,解释) Main.hs:1:1:错误: 在模块“Main”中未定义IO操作“Main” 失败,模块加载:形状。
我发现以下内容讨论了第二件事:
How to avoid "‘main’ is not defined in module ‘Main’" when using syntastic
但如果我把
主要: IO ()
在Main.hs文件中,我仍然会遇到错误。如果我要另外添加行
main =main ()
最后再加两行,然后加载。但是加载之后,它只会退出main,而我就不能再访问main中的函数了。在导入其他模块时,我没有任何理由需要使用任何IO特性。在第8版中,如何在不使用IO的情况下加载本地模块?
发布于 2017-02-06 12:11:30
我自己解决了问题。在Main.hs的顶部有一条线叫做
模块主
我把它拿走了。现在,如果我在堆栈ghci中加载
:l Main.hs Shapes.hs
https://stackoverflow.com/questions/42066282
复制相似问题