我正在尝试用cabal来学习我的Haskell项目。
我广泛使用命令解释器ghci
,它默认导入顶级函数。
cabal repl
还提供了一个命令解释器,但不导入顶级函数。
如何运行cabal repl
以便在命令解释器中定义顶级常量和函数?
这是一个最小的例子:
-- somefile.hs
someConstant :: Int
someConstant = 5
main :: IO ()
main = undefined
现在,someConstant
将在我运行ghci somefile.hs
时定义,但在运行cabal repl
时将无法定义。
答案 0 :(得分:3)
如果模块是项目中列出的模块(即在您的公开模块或其他模块部分中):
:m *ModuleName
否则:
:l somefile.hs
另请参阅精细文档中的What's really in scope at the prompt?。