kprolog K-Prolog Compiler Version 6.0

プログラムの入力と出力

Prolog言語のプログラムを読み込む場合は consult/1reconsult/1-File[File1,...] を使用します。
purge/1を用いて、ファイルに現れる述語を削除することができ ます。

読み込まている述語を表示するためには listing/0listing/1を使用します。 さらに、 listp/1listh/1によって正規表現を用いて検索された述語を 表示できます。

プログラムのテキスト編集には、 edit/1editp/1editor/1が用意されて います。 この他、 拡張ファイル名をアトムに変換するために fname/2が用意されています。


consult(@File)
Fileアトムまたは拡張ファイル名

ファイルの内容をファイルの初めから終りまで項として1個ずつ読み取り、 項が節の形であれば述語に追加し、項が指令であればその時点で実行します。 この述語はアプリケーションプログラムを読み込むために用います。

エラー
instantiation_error
type_error
existence_error(source_sink,File)Fileにより指定される入力元が存在しない
permission_error(open,source_sink,File)Fileにより指定される入力元がオープンできない
syntax_errorシンタックスエラー
permission_error(midify,static_procedure,_9632)静的述語を改変しようとした


reconsult(@File)
Fileアトムまたは拡張ファイル名

consult と似ていますが、File の中に現れる節を登録する前にそ の述語を消去します。この述語は、consult によって読み込んだファイ ルを読み直したり、述語に変更を加えるときに使います。

エラー
instantiation_error
type_error
existence_error(source_sink,File)Fileにより指定される入力元が存在しない
permission_error(open,source_sink,File)Fileにより指定される入力元がオープンできない
syntax_errorシンタックスエラー
permission_error(midify,static_procedure,_9632)静的述語を改変しようとした


- (@File)
Fileアトムまたは拡張ファイル名

reconsult と似ていますが、最後に File を読み込んだときより後で File が更新されていなければ、読み込みません。また、 シンタックスエラー時に自動的にエディタを開きます。File名に関してつづり訂正機構 が働きます。

エラー
instantiation_error
type_error
existence_error(source_sink,File)Fileにより指定される入力元が存在しない
permission_error(open,source_sink,File)Fileにより指定される入力元がオープンできない
syntax_errorシンタックスエラー
permission_error(midify,static_procedure,_9632)静的述語を改変しようとした


[@File1,@File2,・・・]
File1アトムまたは拡張ファイル名または、その前に-をつけたもの
File2アトムまたは拡張ファイル名または、その前に-をつけたもの

consult、reconsult の略記法です。 [myfile1,-myfile2] は、consult(myfile1),reconsult(myfile2) とほとんど 同じですが、ファイルごとにヒープ領域の残り容量を表示します。

エラー
instantiation_error
type_error
existence_error(source_sink,File)Fileにより指定される入力元が存在しない
permission_error(open,source_sink,File)Fileにより指定される入力元がオープンできない
syntax_errorシンタックスエラー
permission_error(midify,static_procedure,_9680)静的述語を改変しようとした


consult_time(@File,?T)
Fileアトムまたは拡張ファイル名
T時刻を表す整数

ファイル File を最後に読み込んだ時刻を整数としてTと単一化します。

エラー
instantiation_error
type_error


fname(@In,?Out)
In拡張ファイル名
Outアトム

複合項である拡張ファイル名を、アトムに変換します。 拡張ファイル名としては、

  • file
  • "file"
  • file.pl
  • dir/file
  • /dir/file
  • ./file
  • ../dir/file
等、通常使用する名前を使用できます。/ や ../ や . がオペレータとして定 義されていることに注意してください(/ や . で区切られた名前は、アトムで なければなりません)。

エラー
instantiation_error
type_error


purge(@File)
Fileアトムまたは拡張ファイル名

File の中に現れる述語が、そのときに登録されていれば、abolish によって 消去します。 消去したい述語が定義されているモジュールに入って実行しなければなりません。 この述語は、[File] などで読み込んだ述語を消去するために使います。

エラー
instantiation_error
type_error
permission_error(open,source_sink,File)Fileにより指定される入力元がオープンできない


listing
listing @Name
Nameアトムまたは拡張ファイル名
listing @Name
Name述語指示子または述語頭部
listing @Name
Nameリスト
listp @Pattern
Pattern正規表現パターン
listh @Pattern
Pattern正規表現パターン

listing/0は、現在のモジュールの述語を出力します。
listing/1は、引数に指定した述語名や述語頭部またはそれらのリストに 適合する述語を出力します。
listp/1は、正規表現 Pattern にマッチする名前の述語を出力します。
listp/1は、正規表現 Pattern にマッチする名前の述語の頭部の形を出力します。
この述語は、述語を表示してその内容を調べたり、述語をファイルに 書き出して保存するために使用できます。ファイルに書いた述語は、 consult などで読み込むことができます。 (節の中で1回しか出現しない変数や、assert で登録した節の変数の名前 は元に戻りません。 匿名変数( _ )や、番号付きの変数( _47 など)になります。)

エラー
instantiation_error
type_error


edit @File
Fileアトムまたは拡張ファイル名

ファイル File を編集するために、エディタ(既定は vi)を呼び出します。 エディタから K-Prolog にもどったときには、-File によってファ イル File を読み込みます(エディタの中で File 以外のファイルを変更 しても、そのファイルは読み込まれないことに注意してください)。

エラー
instantiation_error
type_error
existence_error(source_sink,File)Fileにより指定される入力元が存在しない
permission_error(open,source_sink,File)Fileにより指定される入力元がオープンできない
syntax_errorシンタックスエラー
permission_error(midify,static_procedure,_9632)静的述語を改変しようとした


editp @Name
Nameアトム

Name を名前とする述語を定義しているファイルを編集するためにエディ タを呼び出します。ファイルは少なくとも一度読み込まれていなければなりま せん(同じ名前の述語が複数のファイルで定義されているときには、動作は不 定です)。

エラー
instantiation_error
type_error
existence_error(source_sink,File)Fileにより指定される入力元が存在しない
permission_error(open,source_sink,File)Fileにより指定される入力元がオープンできない
syntax_errorシンタックスエラー
permission_error(midify,static_procedure,_9632)静的述語を改変しようとした


editor(@Name)
Name文字列

edit や editp などで使用するエディタの名前を文字列で指定します。

エラー
instantiation_error
type_error



一つ上に戻る 組込み述語に戻る 目次に戻る