我是第一次学习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
。了解这种区别可能有助于你在未来的对话中避免混淆!