为什么ghci找不到我正在尝试编译的hs文件?



我是第一次学习Haskell,我不明白为什么ghci找不到我要编译的文件。尤其是从那以后,我保存了文件。这是我的文件,

import System.IO

trueAndFalse = True && False 

这就是我在编译器中运行的内容


<no location info>: error: can't find file: tut-1.hs
Failed, no modules loaded. 

;失败,未加载任何模块"让我觉得你在说ghci。如果是这样,您可以找到ghci在哪里查找具有:show paths的文件。以下是我尝试时的样子:

> :show paths
current working directory: 
/home/<my username>
module import search paths:
.

模块导入搜索路径告诉它要查找的目录。该列表中唯一的.指向当前工作目录。因此,对我来说,如果我想从ghci实例轻松访问一个文件,我必须将其保存在/home/<my username>中。

当然,有一些方法可以更改所有这些部分——哪些路径在导入搜索路径中,哪些目录是当前工作目录,等等——但这应该会让您获得简单的使用。

顺便说一句,还有一个术语注释:GHC工具套件同时配有编译器和解释器。编译器的可执行文件是ghc,解释器的可执行程序是ghci。了解这种区别可能有助于你在未来的对话中避免混淆!

最新更新