[英]How to import a .hs file in Haskell
我制作了一個名為time.hs
的文件。 它包含一個測量另一個函數執行時間的函數。
有沒有辦法將time.hs
文件導入另一個 Haskell 腳本?
我想要這樣的東西:
module Main where
import C:\Haskell\time.hs
main = do
putStrLn "Starting..."
time $ print answer
putStrLn "Done."
'time.hs' 中的時間定義為:
module time where
Import <necessary modules>
time a = do
start <- getCPUTime
v <- a
end <- getCPUTime
let diff = (fromIntegral (end - start)) / (10^12)
printf "Computation time: %0.3f sec\n" (diff :: Double)
return v
我不知道如何導入或加載單獨的.hs
文件。 導入前是否需要將time.hs
文件編譯為模塊?
Time.hs
:
module Time where
...
script.hs
:
import Time
...
命令行:
ghc --make script.hs
如果模塊Time.hs
與“主”模塊位於同一目錄中,則只需鍵入:
import Time
可以使用分層結構,以便您可以編寫import Utils.Time
。 據我所知,你想要的方式是行不通的。
有關模塊的更多信息,請參閱此處向您學習 Haskell,制作我們自己的模塊。
假設我在同一目錄中有兩個文件:ModuleA.hs 和 ModuleB.hs。
模塊A.hs:
module ModuleA where
...
模塊B.hs:
module ModuleB where
import ModuleA
...
我可以做這個:
ghc -I. --make ModuleB.hs
注意:模塊名和文件名必須相同。 否則無法編譯。 就像是
找不到模塊“...”
會發生。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.