Haskell/モジュール
モジュールは複数の関数や型、型クラスを定義したファイルのこと。
Preludeはデフォルトでインポートされるモジュール。
他にも便利なモジュールはたくさんあり、Hackageに置かれている。
「cabal install パッケージ名」というコマンドでインストールできる。
インポート文はすべての関数定義より前に書く。
import Data.List
モジュールの中の特定の関数のみインポートすることもできる。
import Data.List (nub, sort)
名前の衝突を避けるために、修飾付きインポートがある。
関数を呼び出す際に修飾名が必要になる。別名を付けることもできる。
import qualified Data.Map as Map
ファイル名とモジュール名は一致させる。
括弧内に書いた関数のみエクスポートされ、書いていない関数はモジュール内でのみ使用可能になる。
module ModuleA
( function1
, function2
) where
-- 関数定義