2016-03-24 71 views
4

從ghc 7.6更新到7.10後,似乎你不能:m [Module]ghci> import [Module]其中[Module.hs]是您的手寫模塊文件,位於當前工作目錄中。ghci:如何導入文件夾中的模塊

看來ghci只搜索haskell標準庫和通過cabal全局安裝的模塊的一部分模塊。 (儘管你仍然可以在ghci提示符下使用:load [Module.hs]

我認爲這有點煩人,因爲你無法通過直接從ghci中導入它來測試我的模塊定義是否正確。有沒有我可以調整的開關或配置,所以我可以告訴我的haskell工作區域在哪裏?

+0

只是拋出一個'.cabal'到文件夾中暴露你的模塊,它應該工作 – Carsten

+2

我不明白。如果':load'起作用,爲什麼不使用它呢? – sclv

+0

您仍然可以在「本地」模塊上使用':m'或'import',這就是現在所有模塊必須在調用這些命令之前加載(我相信如果它不是, t加載?)。所以只需要':l Module.hs; :m + Module'。 – user2407038

回答

4

不是一個非常有用的方式,但如果你想達到這個舊的行爲,您必須加載包含模塊

ghci> :l File.hs 

隱藏的文件/文件刪除所有的模塊,你不希望

ghci> :m 

從文件導入模塊現已

ghci> :m YourModule