プログラミング勉強ログ

プログラミングの勉強記録

Yet Another Haskell 3章 (4)

3.4 Source Code Files
プログラムの実行に関して

Test.hsという名前のファイルを用意し、以下を記述する。

module Test
    where

x = 5
y = (6, "Hello")
z = x * fst y

これでプログラムができる。

module TestのTestの部分は、ファイル名と同じにした方が良いらしい。(詳しくは6章で)

 

コマンドラインで、

ghci Test.hs

とすると、このモジュールがロードされる。

>ghci Test.hs
GHCi, version 7.4.2: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Ok, modules loaded: Test.
Prelude Test>

 

ghci起動後であれば、:lを使ってロードできる。

Prelude> :l Test.hs
Ok, modules loaded: Test.
Prelude Test>

 

ロード後はモジュール内で定義されている識別子にアクセスできる。

Prelude Test> x
5
Prelude Test> y
(6,"Hello")
Prelude Test> z
30

 

実行ファイル形式にコンパイルするには、

module名をMainにし、main関数を追加する。

main = putStrLn "Hello World"

 

そして、コマンドラインで、

ghc --make Test.hs -o test

とすると、testという実行ファイルが生成される。