技術のメモ箱

Haskell/モジュール

モジュールとは

モジュールは複数の関数や型、型クラスを定義したファイルのこと。
Preludeはデフォルトでインポートされるモジュール。
他にも便利なモジュールはたくさんあり、Hackageに置かれている。
「cabal install パッケージ名」というコマンドでインストールできる。

モジュールのインポート

インポート文はすべての関数定義より前に書く。

import Data.List

モジュールの中の特定の関数のみインポートすることもできる。

import Data.List (nub, sort)

名前の衝突を避けるために、修飾付きインポートがある。
関数を呼び出す際に修飾名が必要になる。別名を付けることもできる。

import qualified Data.Map as Map

モジュールのエクスポート

ファイル名とモジュール名は一致させる。
括弧内に書いた関数のみエクスポートされ、書いていない関数はモジュール内でのみ使用可能になる。

module ModuleA
( function1
, function2
) where

-- 関数定義
pagetop