エクスポート

module モジュール名 [(エクスポートリスト)] where      -- []内はoptional
  • 他のモジュールにインポートできるようにする
  • module宣言を省略すると、「module Main (main) where」が補われる。
  • エクスポートリストを省略すると、すべてのエンティティがエクスポートされる
  • エクスポートリストにエクスポートしたいエンティティの名前をカンマ区切りで書く
  • データコンストラクタは、「型コンストラクタ(データコンストラクタ)」の形で書く
    • 「型コンストラクタ(..)」で、型コンストラクタと、それに対応するデータコンストラクタとフィールドラベルがすべてエクスポートされる
  • エクスポートリストには、インポートした別のモジュールのエンティティを再び宣言することができる
    • エクスポートリストの中に、module宣言を書く