如何在ghci脚本中导入其他堆栈模块?

时间:2017-11-05 14:22:37

标签: haskell ghci haskell-stack

在我可以探索GHCI中的数据之前,我有一系列IO动作要运行。所以我使用这个命令:

stack ghci --ghci-options "-ghci-script Scratch.hs"

问题是找不到其他模块,无法导入。它们稍后编译,随后可以交互式导入。我该如何更改此订单?

1 个答案:

答案 0 :(得分:1)

您可以编写特定于项目的.ghci文件:

.ghci

import qualified Data.Text as T

:set prompt "Custom GHCi Script > "
:set -XOverloadedStrings

putStrLn "Hello Darkness my old Friend!"

然后删除非所有者的所有写入权限

$ > chmod go-w .ghci

最后

$ > stack ghci

$ > stack ghci --package text --load Scratch.hs
Configuring GHCi with the following packages:
GHCi, version 8.0.2: http://www.haskell.org/ghc/  :? for help
Hello Darkness my old Friend!
Loaded GHCi configuration from /home/epsilonhalbe/.ghci
Loaded GHCi configuration from /home/epsilonhalbe/.ghc/ghci.conf
Loaded GHCi configuration from /tmp/ghci24482/ghci-script
Custom GHCi Script > a = T.pack "Text"
Custom GHCi Script > :t a
a :: T.Text
Custom GHCi Script >