?- export(+述語リスト) ?- common(+述語リスト) ?- import(+ファイル名) ?- import(+モジュール名,+述語リスト) ?- hidden(+関数子リスト)
export/1とcommon/1は、コンパイルされたファイル中でのみ有効な指令です。これらは、モジュールの定義の先頭になければなりません。
デフォルトではモジュール内のすべての述語は、ローカルな述語で見ることはできません。ローカルなモジュール述語をある場所から呼び出すには、common/1を使ってグローバル名領域に指定するか、あるいはexport/1を使ってエクスポートされなければなりません。明示的にインポートされた場合を除いて、通常エクスポートされた述語は完全な指定によって参照されます(モジュール名:述語(...))。
import/1とimport/2は、モジュール定義の本体中でのみ有効な指令です。import/1は、他のコンパイル済みモジュールファイルのエクスポート情報を読み出し、これらの述語に対するモジュール名を省くことができます。 import/2は、指定した述語を「モジュール名」に属する述語として定義しますが、それが既存のモジュールであるかをチェックすることはありません。
hidden/1は通常はすべてグローバルになるアトムやファンクタを、述語として用いる場合を除いて隠蔽するのに便利です。