簡體   English   中英

我在哪里保存我的Haskell“模塊”?

[英]Where do I save my Haskell “modules”?

我把一些函數放在一個文件中。 在我的電腦上應該保存這個文件,以便我可以輕松加載我的功能?

我在Windows 64位計算機上使用Haskell平台。

我通常將我的模塊放在同一個目錄樹中,並在樹的根目錄下啟動ghci 然后模塊可以相互導入,我可以輕松地:load交互式地將模塊:loadghci

$ ghci

.... loading ....

Prelude> :load directory/subdirectory/mymodule.hs

如果您希望從幾個不同的項目中訪問您的模塊,我建議為他們創建一個cabal包並使用cabal install安裝它。 不需要發布到hackage - 沒有參數的cabal install在當前目錄中查找.cabal文件並安裝相應的包。

如果您希望從單個項目訪問您的模塊 - 在分層文件夾樹中組織源的通常做法也適用於Haskell。 讓我舉個例子:

Hello/World.hs
Foo/Bar.hs
Quux.hs
Hello.hs

Hello/World.hs應該在頭文件中有module Hello.World where 主模塊應該有module Main ,但實際的文件名可以是任何東西(例如Quux.hs )。 Foo/Bar.hs您可以使用import Hello.World 當您在ghci加載Foo/Bar.hs時,當前目錄應該是樹的根目錄,否則它將找不到Hello.World。 您可以將模塊名稱而不是文件名傳遞給ghci:例如ghci Hello.World將起作用。

以下是文檔:

http://haskell.org/ghc/docs/latest/html/users_guide/separate-compilation.html

http://haskell.org/ghc/docs/latest/html/users_guide/packages.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM