home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FreeWare Collection 3
/
FreeSoftwareCollection3pd199x-jp.img
/
towns_os
/
quasar
/
referenc.doc
< prev
next >
Wrap
Text File
|
1980-01-02
|
83KB
|
3,592 lines
Quasar Prolog リファレンス・マニュアル
(Version 0.36)
1990年 9月版
Copyright (C) 1990
硴崎 賢一
All rights reserved.
電子メイルアドレス
junet: kakizaki@cse.kyutech.ac.jp
NIFTY-Serve: PBB00353
----------------------------------------------------------------------------
商標
----------------------------------------------------------------------------
MS-DOS は米国マイクロソフト社の登録商標です.
UNIX オペレーティング・システムは,AT&T のベル研究所が開発し,AT&T がライセ
ンスしています.
PS/55 は米国 IBM 社の商標です.
その他,本文書で使用しているシステム名,製品名は一般に各開発メーカーの登録
商標です.
Quasar Prolog リファレンスマニュアル 目次
- 目 次 -
1. プログラム管理 ................................................. 1
2. プログラムの実行制御 ........................................... 5
3. 内部データベース ............................................... 10
4. 入出力 ......................................................... 13
4.1 ファイルとストリーム .......................................... 13
4.2 標準入出力操作 ................................................ 16
4.3 入出力制御 .................................................... 18
4.4 入力 .......................................................... 19
4.5 出力 .......................................................... 23
4.6 使用者への問い合わせ .......................................... 30
5. ファイルシステム ............................................... 32
5.1 ファイル ...................................................... 32
5.2 ディレクトリ .................................................. 32
6. 算術演算 ....................................................... 34
7. データ型 ....................................................... 37
7.1 データ型の判定 ................................................ 37
7.2 データ型の変換 ................................................ 42
8. デバッガ ....................................................... 44
9. その他の機能 ................................................... 48
9.1 外部コマンドの実行 ............................................ 48
9.2 環境の照会 .................................................... 48
9.3 対話記録 ...................................................... 50
- 1 -
Quasar Prolog リファレンスマニュアル プログラム管理
----------------------------------------------------------------------------
1. プログラム管理
----------------------------------------------------------------------------
----------------------------------------------------------------------------
consult(+File)
----------------------------------------------------------------------------
●概要
指定されたプログラムを読み込みます.
●解説
ファイル名は,シンボル型でなければなりません.
指定されたファイルの中に定義されている述語を内部データベースに読み込みます.
読み込む前に,内部データベースの中に同じファンクタとアリティの述語があった場
合には,新たに読み込む定義を以前のものに追加します.
読み込み中のファイルに文法エラーがあった場合には,エラーが報告されますが,
ファイルの読み込みは中断されず,最後まで読み込まれます.
ファイルを読み込むと成功しますが,ファイルが存在しないなどで読み込むことが
できなかった場合には失敗します.
●エラー条件
File がシンボル型でない場合には,エラーになります.
●その他
----------------------------------------------------------------------------
reconsult(+File)
----------------------------------------------------------------------------
●概要
指定されたプログラムを読み込みます.
●解説
reconsult/1 は,下記の処理を除き,consult/1 と同様な処理をおこないます.
指定されたファイルの中に定義されている述語を内部データベースに読み込みます.
読み込む前に,内部データベースの中に同じファンクタとアリティの述語があった場
合には,新たに読み込む定義を以前のと置き換えます.
●エラー条件
●その他
----------------------------------------------------------------------------
[+Files]
----------------------------------------------------------------------------
●概要
指定されたプログラムを読み込みます.
●解説
単にファイル名が与えられた場合には,そのファイルを consult/1 と同様に読み込
み,ファイル名の前に - が付加されている場合には,そのファイルを reconsult/1
と同様に読み込みます.リストの要素として複数のファイル名を記述した場合には,
- 1 -
Quasar Prolog リファレンスマニュアル プログラム管理
それらのファイルが順に読み込まれます.
●エラー条件
●その他
----------------------------------------------------------------------------
save(+File)
----------------------------------------------------------------------------
●概要
現在の Quasar Prolog の状態をファイルに保存します.
●解説
まだ用意されていません.
●エラー条件
●その他
----------------------------------------------------------------------------
listing
----------------------------------------------------------------------------
●概要
すべての述語の定義を出力します.
●解説
内部データベースに格納されているすべての述語定義を出力します.
listing は必ず成功します.
●エラー条件
●その他
Quasar Prolog の組み込み述語などの,使用者が定義した述語以外は表示されませ
ん.
----------------------------------------------------------------------------
listing(+Pred)
----------------------------------------------------------------------------
●概要
指定された述語の定義を出力します.
●解説
Pred で指定された述語の定義を出力します.
●エラー条件
●その他
Quasar Prolog の組み込み述語などの,使用者が定義した述語以外は表示されませ
ん.
----------------------------------------------------------------------------
apropos
- 2 -
Quasar Prolog リファレンスマニュアル プログラム管理
----------------------------------------------------------------------------
●概要
処理系内部に記録されているシンボル型データに関する情報を表示します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
apropos(+Name)
----------------------------------------------------------------------------
●概要
指定された文字列を含むシンボルアトムの情報を出力します.
●解説
Name はシンボル型か文字リスト型の引数で,Name で指定された文字列を含むシン
ボル型データに関する情報を表示します.
●エラー条件
●その他
----------------------------------------------------------------------------
current_symbol(?Symbol)
----------------------------------------------------------------------------
●概要
システム内部に記録されているシンボル型データを取得します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
current_structure(?Symbol, ?Struct)
----------------------------------------------------------------------------
●概要
システム内部に記録されている構造を取得します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
current_predicate(?Symbol, ?Pred)
----------------------------------------------------------------------------
●概要
システム内部に記録されているユーザ定義述語を取得します.
- 3 -
Quasar Prolog リファレンスマニュアル プログラム管理
●解説
●エラー条件
●その他
- 4 -
Quasar Prolog リファレンスマニュアル 実行制御
----------------------------------------------------------------------------
2. プログラムの実行制御
----------------------------------------------------------------------------
----------------------------------------------------------------------------
+Goal1, +Goal2
----------------------------------------------------------------------------
●概要
2つのゴールがともに成功した場合に成功します.
●解説
この述語は,Goal1, Goal2 の順でゴールの実行を行います.Goal1 が失敗した場合
には,Goal2 は実行されることなく失敗します.
Goal1 が成功し Goal2 が失敗した場合には,Goal1 の別解を求め,再度 Goal2 を
実行します.再び Goal2 が失敗した場合には,Goal1 に別解がある限り繰り返し Go
al1 の別解を求め,Goal2 を実行します.Goal1 に別解がなくなった場合には,この
述語は失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
+Goal1 ; +Goal2
----------------------------------------------------------------------------
●概要
2つのゴールのどちらかが成功した場合に成功します.
●解説
この述語は,Goal1 が成功した場合には,Goal2 を実行することなく成功します.
Goal1 が失敗した場合には Goal2 が実行され,Goal2 が成功した時にはこの述語も成
功し,Goal2 が失敗したときにはこの述語も失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
+If -> +Then
----------------------------------------------------------------------------
●概要
IF~THEN形式の条件判断処理を行います.
●解説
If が成功した場合には,Then を実行します.この述語は If, Then の両者が成功
した場合にのみ成功します.
●エラー条件
●その他
- 5 -
Quasar Prolog リファレンスマニュアル 実行制御
----------------------------------------------------------------------------
+If -> +Then ; +Else
----------------------------------------------------------------------------
●概要
IF~THEN~ELSE形式の条件判断処理を行います.
●解説
この述語は,If が成功した時には Then を実行し,Ig が失敗した時には Else を
実行します.If の実行結果によって選ばれた Then あるいは Else が成功した場合に
成功し,失敗した場合に失敗します.
If が成功して選択された Then の実行が失敗した場合には,Else は実行されるこ
とはありません.
●エラー条件
●その他
----------------------------------------------------------------------------
!
----------------------------------------------------------------------------
●概要
他の候補節を削除します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
true
----------------------------------------------------------------------------
●概要
必ず成功します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
fail
----------------------------------------------------------------------------
●概要
必ず失敗します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
- 6 -
Quasar Prolog リファレンスマニュアル 実行制御
call(+Goals)
----------------------------------------------------------------------------
●概要
引数をゴールとして実行します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
not(+Goals)
----------------------------------------------------------------------------
●概要
引数のゴールが成功する場合に失敗します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
repeat
----------------------------------------------------------------------------
●概要
繰り返し処理を行います.
●解説
fail と組み合わせて繰り返し処理を行います.
●エラー条件
●その他
----------------------------------------------------------------------------
repeat(+Num)
----------------------------------------------------------------------------
●概要
指定回数の繰り返し処理を行います.
●解説
fail と組み合わせてNumで指定された回数の繰り返し処理を行います.
●エラー条件
●その他
----------------------------------------------------------------------------
for(-Var, +Start, +End)
----------------------------------------------------------------------------
- 7 -
Quasar Prolog リファレンスマニュアル 実行制御
●概要
制御変数を利用する繰り返し処理を行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
for(-Var, +Start, +End, +Step)
----------------------------------------------------------------------------
●概要
増減値を指定した制御変数を利用する繰り返し処理を行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
catch(+Tag, -Value)
----------------------------------------------------------------------------
●概要
大域脱出の受け手を設定します.
●解説
throw/2 によって行う大域脱出の受け手を設定します.Tag は,シンボル型,整数
型,浮動小数型のいずれかのデータを指定します.catch/2 は,この Tag のデータと
一致する値を第1引数に持つ throw/2 の受け手となります.
Value は,変数型のデータを取ります.Value は,最初に catch/2 が成功した場合
には変数のままですが,throw/2 の大域脱出先として成功した場合には,throw/2 の
第2引数で指定された値に具体化されます.
●エラー条件
●その他
----------------------------------------------------------------------------
throw(+Tag, +Value)
----------------------------------------------------------------------------
●概要
大域脱出を行います.
●解説
Tag と同一の値を第1引数に持ち,もっとも最近に実行され,有効な catch/2 に大
域脱出を行います.受け手となった catch/2 の第2引数の値として Value を渡しま
す.Tag, Value は,シンボル型,整数型,浮動小数型のいずれかでなければなりませ
ん.
●エラー条件
●その他
- 8 -
Quasar Prolog リファレンスマニュアル 実行制御
----------------------------------------------------------------------------
break
----------------------------------------------------------------------------
●概要
ブレークモードに入ります.
●解説
●エラー条件
●その他
まだ機能していません.
----------------------------------------------------------------------------
abort
----------------------------------------------------------------------------
●概要
処理を中断します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
exit
----------------------------------------------------------------------------
●概要
Quasar Prolog を終了します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
halt
----------------------------------------------------------------------------
●概要
Quasar Prolog を終了します.
●解説
●エラー条件
●その他
- 9 -
Quasar Prolog リファレンスマニュアル データベース
----------------------------------------------------------------------------
3. 内部データベース
----------------------------------------------------------------------------
----------------------------------------------------------------------------
assert(+Term)
----------------------------------------------------------------------------
●概要
節を内部データベースに登録します.
●解説
assertz/1 と等価です.
●エラー条件
●その他
----------------------------------------------------------------------------
asserta(+Term)
----------------------------------------------------------------------------
●概要
節を内部データベースの最初に登録します.
●解説
Term で指定される節を内部データベースの最初に登録します.節を登録できた場合
には成功します.
●エラー条件
動的述語として宣言されていない述語の節を登録しようとした場合には,エラーが
検出されます.
システム組み込み述語と同一のファンクタ/アリティを頭部に持つ節を登録しよう
とした場合には,エラーが検出されます.
節の頭部として不適切な項が使用されている場合には,エラーが生じます.
●その他
----------------------------------------------------------------------------
assertz(+Term)
----------------------------------------------------------------------------
●概要
節を内部データベースの最後に登録します.
●解説
Term で指定される節を内部データベースの最後に登録します.節を登録できた場合
には成功します.
●エラー条件
asserta/1 と同様です.
●その他
- 10 -
Quasar Prolog リファレンスマニュアル データベース
----------------------------------------------------------------------------
retract(+Term)
----------------------------------------------------------------------------
●概要
節をデータベースから削除します.
●解説
Term で指定された節と単一化可能な節を内部データベースから削除します.節を削
除できた場合には成功します.単一化可能な節が複数ある場合には,retract/1 は複
数回成功し,成功するたびに,はじめの方から節を削除します.削除する節がない場
合には,retract/1 は失敗します.
●エラー条件
動的述語として宣言されていない述語の節を削除しようとした場合には,エラーが
検出されます.
システム組み込み述語と同一のファンクタ/アリティを頭部に持つ節を削除しよう
とした場合には,エラーが検出されます.
節の頭部として不適切な項が使用されている場合には,エラーが生じます.
●その他
----------------------------------------------------------------------------
retract_all(+Term)
----------------------------------------------------------------------------
●概要
引数と単一化可能な節の全てを内部データベースから削除します.
●解説
Term で指定された節と単一化可能な節のすべてを内部データベースから削除しま
す.節を削除できた場合には成功します.
●エラー条件
retract/1 と同様です.
●その他
----------------------------------------------------------------------------
abolish(+Func, +Arity)
----------------------------------------------------------------------------
●概要
述語を内部データベースから削除します.
●解説
Func, Arity で指定されたファンクタとアリティに合致する述語を内部データベー
スから削除します.
●エラー条件
動的述語として宣言されていない述語の節を削除しようとした場合には,エラーが
- 11 -
Quasar Prolog リファレンスマニュアル データベース
検出されます.
システム組み込み述語と同一のファンクタ/アリティを頭部に持つ節を削除しよう
とした場合には,エラーが検出されます.
●その他
----------------------------------------------------------------------------
clause(+Head, ?Body)
----------------------------------------------------------------------------
●概要
引数と単一化可能な節の定義を内部データベースから取り出します.
●解説
Head で指定された頭部を持つ節の,頭部と Head,本体と Body を単一化します.
単一化できた場合には成功します.単一化可能な節が複数ある場合には,clause/2 は
複数回成功し,成功するたびに,はじめの方から節を単一化した結果を得ます.単一
化可能な節がない場合には,clause/2 は失敗します.
●エラー条件
●その他
- 12 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
4. 入出力
----------------------------------------------------------------------------
----------------------------------------------------------------------------
4.1 ファイルとストリーム
----------------------------------------------------------------------------
----------------------------------------------------------------------------
open(+File, +Mode, -Stream)
----------------------------------------------------------------------------
●概要
ファイルをオープンします.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
close(+File)
----------------------------------------------------------------------------
●概要
オープンされているファイルをクローズします.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
close_all
----------------------------------------------------------------------------
●概要
オープンされているファイルを全てクローズします.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
clear_input(+Stream)
----------------------------------------------------------------------------
●概要
入力ストリームのバッファの内容を消去します.
●解説
●エラー条件
●その他
- 13 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
clear_input
----------------------------------------------------------------------------
●概要
標準入力ストリームのバッファの内容を消去します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
force_output(+Stream)
----------------------------------------------------------------------------
●概要
出力ストリームのバッファの内容を強制的に書き出します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
force_output
----------------------------------------------------------------------------
●概要
標準出力ストリームのバッファの内容を強制的に書き出します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
flash_all
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
current_stream(?File, ?Mode, ?Stream)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
- 14 -
Quasar Prolog リファレンスマニュアル 入出力
●その他
----------------------------------------------------------------------------
current_input(-Stream)
----------------------------------------------------------------------------
●概要
現在の標準入力のストリームを返します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
current_output(-Stream)
----------------------------------------------------------------------------
●概要
現在の標準出力のストリームを返します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
line_count(+Stream, -Count)
----------------------------------------------------------------------------
●概要
現在までに入出力を行った行数を返します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
line_position(+Stream, -Pos)
----------------------------------------------------------------------------
●概要
現在の行において入出力を行ったバイト数を返します.
●解説
●エラー条件
●その他
- 15 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
4.2 標準入出力操作
----------------------------------------------------------------------------
----------------------------------------------------------------------------
see(+File)
----------------------------------------------------------------------------
●概要
入力用のファイルをオープンします.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
seeing(-File)
----------------------------------------------------------------------------
●概要
現在入力用にオープンされているファイルを問い合わせます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
seen
----------------------------------------------------------------------------
●概要
入力用にオープンされているファイルをクローズします.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
tell(+File)
----------------------------------------------------------------------------
●概要
出力用のファイルをオープンします.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
telling(-File)
----------------------------------------------------------------------------
- 16 -
Quasar Prolog リファレンスマニュアル 入出力
●概要
現在出力用にオープンされているファイルを問い合わせます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
told
----------------------------------------------------------------------------
●概要
出力用にオープンされているファイルをクローズします.
●解説
●エラー条件
●その他
- 17 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
4.3 入出力制御
----------------------------------------------------------------------------
----------------------------------------------------------------------------
operator(+Ops, +Type, +Num)
----------------------------------------------------------------------------
●概要
演算子を定義します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
current_operator(+Ops, +Type, +Num)
----------------------------------------------------------------------------
●概要
定義されている演算子を調べます.
●解説
●エラー条件
●その他
- 18 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
4.4 入力
----------------------------------------------------------------------------
----------------------------------------------------------------------------
read(-Term, +Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームから項を読み込みます.
●解説
コンソール入出力の場合には,プロンプト '|: ' が出力されます.
入力の終了には,フルストップを忘れないようにしてください.
●エラー条件
エラーが検出された場合には,エラーメッセージを出力した後に read/1 が失敗し
ます.他の述語におけるエラーのようにトップレベルに戻らないので注意してくださ
い.
●その他
----------------------------------------------------------------------------
read(-Term)
----------------------------------------------------------------------------
●概要
標準入力から項を読み込みます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
read_line(-String)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
まだ利用できません.
----------------------------------------------------------------------------
read_string(-String)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
- 19 -
Quasar Prolog リファレンスマニュアル 入出力
●その他
まだ利用できません.
----------------------------------------------------------------------------
read_char(-Char, +Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームから文字を読み込みます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
read_char(-Char)
----------------------------------------------------------------------------
●概要
標準入力から文字を読み込みます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
read_line_chars(-Chars, +Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームから,1行の文字列を文字リスト型として読み込みます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
read_line_chars(-Chars)
----------------------------------------------------------------------------
●概要
標準入力から1行の文字列を,文字リスト型として読み込みます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
get(-Char)
----------------------------------------------------------------------------
- 20 -
Quasar Prolog リファレンスマニュアル 入出力
●概要
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性維持のために定義しています.
classic.qsrを読み込む必要があります.
----------------------------------------------------------------------------
ttyget(-Char)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性維持のために定義しています.
classic.qsrを読み込む必要があります.
----------------------------------------------------------------------------
get0(-Char)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性維持のために定義しています.
classic.qsrを読み込む必要があります.
----------------------------------------------------------------------------
ttyget0(-Char)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性維持のために定義しています.
classic.qsrを読み込む必要があります.
----------------------------------------------------------------------------
skip(+Char)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性維持のために定義しています.
classic.qsrを読み込む必要があります.
- 21 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
ttyskip(+Char)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性維持のために定義しています.
classic.qsrを読み込む必要があります.
- 22 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
4.5 出力
----------------------------------------------------------------------------
----------------------------------------------------------------------------
write(+?Term, +Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームに項を出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
write(+?Term)
----------------------------------------------------------------------------
●概要
標準出力に項を出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
writeq(+?Term, +Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームに項を出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
writeq(+?Term)
----------------------------------------------------------------------------
●概要
標準出力に項を出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
write_line(+String)
----------------------------------------------------------------------------
- 23 -
Quasar Prolog リファレンスマニュアル 入出力
●概要
●解説
●エラー条件
●その他
まだ利用できません.
----------------------------------------------------------------------------
write_string(+String)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
まだ利用できません.
----------------------------------------------------------------------------
print(+?Term)
----------------------------------------------------------------------------
●概要
標準出力に項を出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
display(+?Term, +Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームに項を出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
display(+?Term)
----------------------------------------------------------------------------
●概要
標準出力に項を出力します.
●解説
●エラー条件
●その他
- 24 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
write_char(+Char, +Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームに文字を出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
write_char(+Char)
----------------------------------------------------------------------------
●概要
標準出力に文字を出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
write_chars(+Chars, +Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームに文字リスト型のデータを出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
write_chars(+Chars)
----------------------------------------------------------------------------
●概要
標準出力に文字リスト型のデータを出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
- 25 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
●概要
指定されたストリームに文字リスト型のデータを出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
- 26 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
●概要
標準出力に文字リスト型のデータを出力します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
terpri(+Stream)
----------------------------------------------------------------------------
●概要
指定されたストリームで改行します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
terpri
----------------------------------------------------------------------------
●概要
標準出力で改行します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
fresh_line(+Stream)
----------------------------------------------------------------------------
●概要
カーソルが行の先頭(左端)にない場合に改行します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
fresh_line
----------------------------------------------------------------------------
●概要
カーソルが行の先頭(左端)にない場合に改行します.
●解説
●エラー条件
- 27 -
Quasar Prolog リファレンスマニュアル 入出力
●その他
----------------------------------------------------------------------------
nl
----------------------------------------------------------------------------
●概要
改行します.
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性のために用意されています.
この述語を利用する場合には,classic.qsrを読み込む必要があります.
----------------------------------------------------------------------------
ttynl
----------------------------------------------------------------------------
●概要
改行します.
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性のために用意されています.
この述語を利用する場合には,classic.qsrを読み込む必要があります.
----------------------------------------------------------------------------
tab(+Num)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
ttytab(+Num)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
format(+Stream, +Format, +Args)
- 28 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
●概要
書式指定に合わせた出力を行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
format(+Format, +Args)
----------------------------------------------------------------------------
●概要
書式指定に合わせた出力を行います.
●解説
●エラー条件
●その他
- 29 -
Quasar Prolog リファレンスマニュアル 入出力
----------------------------------------------------------------------------
4.6 使用者への問い合わせ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
y_or_n_p
----------------------------------------------------------------------------
●概要
ユーザに可否の問い合わせを行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
y_or_n_p(+Format)
----------------------------------------------------------------------------
●概要
ユーザに可否の問い合わせを行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
y_or_n_p(+Format, +Args)
----------------------------------------------------------------------------
●概要
ユーザに可否の問い合わせを行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
yes_or_no_p
----------------------------------------------------------------------------
●概要
ユーザに可否の問い合わせを行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
yes_or_no_p(+Format)
----------------------------------------------------------------------------
- 30 -
Quasar Prolog リファレンスマニュアル 入出力
●概要
ユーザに可否の問い合わせを行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
yes_or_no_p(+Format, +Args)
----------------------------------------------------------------------------
●概要
ユーザに可否の問い合わせを行います.
●解説
●エラー条件
●その他
- 31 -
Quasar Prolog リファレンスマニュアル ファイル
----------------------------------------------------------------------------
5. ファイルシステム
----------------------------------------------------------------------------
----------------------------------------------------------------------------
5.1 ファイル
----------------------------------------------------------------------------
----------------------------------------------------------------------------
probe_file(+File)
----------------------------------------------------------------------------
●概要
ファイルがあるかどうか調べます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
delete_file(+File)
----------------------------------------------------------------------------
●概要
ファイルを削除します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
rename_file(+Old, +New)
----------------------------------------------------------------------------
●概要
ファイル名を変更します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
5.2 ディレクトリ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
user_homedir_pathname(-Path)
----------------------------------------------------------------------------
●概要
使用者のホームディレクトリを取得します.
- 32 -
Quasar Prolog リファレンスマニュアル ファイル
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
full_pathname(+Path, -FullPath)
----------------------------------------------------------------------------
●概要
ファイルのフルパス名を取得します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
change_directory(+Dir)
----------------------------------------------------------------------------
●概要
指定されたディレクトリに移動します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
make_directory(+Dir)
----------------------------------------------------------------------------
●概要
指定されたディレクトリを作成します.
●解説
●エラー条件
●その他
- 33 -
Quasar Prolog リファレンスマニュアル 算術演算
----------------------------------------------------------------------------
6. 算術演算
----------------------------------------------------------------------------
----------------------------------------------------------------------------
?Result := +Exp
----------------------------------------------------------------------------
●概要
算術式を評価して結果を返します.
●解説
算術式 Exp を評価して,計算結果と Result を単一化します.
●エラー条件
算術式の中に具体化されていない変数や,定義されていない関数,演算子などがあ
る場合にエラーが生じます.
●その他
以下に,算術式の中で使用できる演算子,関数,定数,システム変数を示します.
1)演算子
単項演算子
+ 式
- 式
二項演算子
式1 + 式2 式1 - 式2 式1 * 式2 式1 / 式2
式1 // 式2
式1 /\ 式2 式1 \/ 式2 式1 << 式2 式1 >> 式2
2)関数
三角関数
sin(式) cos(式) tan(式)
asin(式) acos(式) atan(式)
sinh(式) cosh(式) tanh(式)
指数対数関数
exp(式) expt(式1,式2)
log(式) log(式1,式2)
型変換
integer(式) float(式)
その他
abs(式) sqrt(式) floor(式) ceiling(式)
mod(式1,式2) neg(式) not(式)
3)定数
e pi
4)システム変数
runtime cputime
- 34 -
Quasar Prolog リファレンスマニュアル 算術演算
----------------------------------------------------------------------------
+Exp1 =:= +Exp2
----------------------------------------------------------------------------
●概要
2つの算術式を評価し,両者の計算結果が等しいかどうかを比較します.
●解説
Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.等しい場合には成
功し,異なっている場合には失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
+Exp1 \== +Exp2
----------------------------------------------------------------------------
●概要
2つの算術式を評価し,両者の計算結果が異なっているかどうかを比較します.
●解説
Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.異なっている場合
には成功し,等しい場合には失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
+Exp1 > +Exp2
----------------------------------------------------------------------------
●概要
2つの算術式を評価し,左辺の値が右辺の値よりも大きいかどうかを比較します.
●解説
Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.左辺の値が右辺の
値よりも大きい場合には成功し,そうでない場合には失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
+Exp1 >= +Exp2
----------------------------------------------------------------------------
●概要
2つの算術式を評価し,左辺の値が右辺の値以上かどうかを比較します.
●解説
Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.左辺の値が右辺の
- 35 -
Quasar Prolog リファレンスマニュアル 算術演算
値以上の場合には成功し,そうでない場合には失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
+Exp1 < +Exp2
----------------------------------------------------------------------------
●概要
2つの算術式を評価し,左辺の値が右辺の値よりも小さいかどうかを比較します.
●解説
Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.左辺の値が右辺の
値よりも小さい場合には成功し,そうでない場合には失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
+Exp1 =< +Exp2
----------------------------------------------------------------------------
●概要
2つの算術式を評価し,左辺の値が右辺の値以下かどうかを比較します.
●解説
Exp1 と Exp2 をそれぞれ評価し,両者の計算結果を比較します.左辺の値が右辺の
値以下の場合には成功し,そうでない場合には失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
compare(?Rel, +?Term1, +?Term2)
----------------------------------------------------------------------------
●概要
項の標準順位を比較します.
●解説
●エラー条件
●その他
- 36 -
Quasar Prolog リファレンスマニュアル データ型
----------------------------------------------------------------------------
7. データ型
----------------------------------------------------------------------------
----------------------------------------------------------------------------
7.1 データ型の判定
----------------------------------------------------------------------------
----------------------------------------------------------------------------
boundp(-?Var)
----------------------------------------------------------------------------
●概要
変数が具体化されているかどうか調べます.
●解説
Var が具体化された変数であれば成功し,そうでなければ失敗します.
Var に変数以外が与えられた場合には,常に成功します.
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
unboundp(-?Var)
----------------------------------------------------------------------------
●概要
変数が具体化されていないかどうか調べます.
●解説
Var が具体化されていない変数であれば成功し,そうでなければ失敗します.
Var に変数以外が与えられた場合には,常に失敗します.
●エラー条件
●その他
----------------------------------------------------------------------------
symbolp(+?Symbol)
----------------------------------------------------------------------------
●概要
シンボル型のデータかどうかを調べます.
●解説
Symbol がシンボル型のデータの場合には成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
- 37 -
Quasar Prolog リファレンスマニュアル データ型
----------------------------------------------------------------------------
atom(+?Atom)
----------------------------------------------------------------------------
●概要
アトムかどうかを調べます.
●解説
Atom のデータ型がい化の1つに一致する場合に成功し,そうでなければ失敗しま
す.
1)シンボル型
2)整数型
3)浮動小数型
4)文字型
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
integerp(+?Num)
----------------------------------------------------------------------------
●概要
整数型のデータかどうか調べます.
●解説
Num が整数型であれば成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
floatp(+?Num)
----------------------------------------------------------------------------
●概要
実数型のデータかどうか調べます.
●解説
Num が整数型であれば成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
- 38 -
Quasar Prolog リファレンスマニュアル データ型
----------------------------------------------------------------------------
numberp(+?Num)
----------------------------------------------------------------------------
●概要
整数型か実数型のデータかどうか調べます.
●解説
Num が整数型か実数型であれば成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
structurep(+?Struct)
----------------------------------------------------------------------------
●概要
構造型のデータかどうかを調べます.
●解説
Struct が構造型であれば成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
listp(+?List)
----------------------------------------------------------------------------
●概要
リスト型(コンスかニル)のデータかどうかを調べます.
●解説
List がリスト型(コンスかニル)であれば成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
consp(+?Cons)
----------------------------------------------------------------------------
●概要
リスト型(コンスのみ)のデータかどうかを調べます.
- 39 -
Quasar Prolog リファレンスマニュアル データ型
●解説
Const がリスト型(コンスのみ)であれば成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
endp(+?Nil)
----------------------------------------------------------------------------
●概要
リストの終端かどうかを調べます.
●解説
Nil がリストの終端(ニル)であれば成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
streamp(+?Stream)
----------------------------------------------------------------------------
●概要
ストリームかどうかを調べます.
●解説
Stream がストリーム型であれば成功し,そうでなければ失敗します.
●エラー条件
エラーは生じません.
●その他
----------------------------------------------------------------------------
input_stream_p(+?Stream)
----------------------------------------------------------------------------
●概要
入力ストリームかどうかを調べます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
output_stream_p(+?Stream)
- 40 -
Quasar Prolog リファレンスマニュアル データ型
----------------------------------------------------------------------------
●概要
出力ストリームかどうかを調べます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
type_of(+?Term, -?Type)
----------------------------------------------------------------------------
●概要
項のデータ型を得ます.
●解説
Termに与えられた項のデータ型をTypeに返します.
●エラー条件
●その他
----------------------------------------------------------------------------
atomic(+?Atomic)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性のために用意されています.
この述語を利用する場合には,classic.qsrを読み込んでください.
- 41 -
Quasar Prolog リファレンスマニュアル データ型
----------------------------------------------------------------------------
7.2 データ型の変換
----------------------------------------------------------------------------
----------------------------------------------------------------------------
functor(?Struct, ?Functor, ?Arity)
----------------------------------------------------------------------------
●概要
構造のファンクタとアリティを得ます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
arg(+Num, +Struct, ?Arg)
----------------------------------------------------------------------------
●概要
構造型データの引数とデータを単一化します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
structure_list(?Struct, ?list)
----------------------------------------------------------------------------
●概要
構造型のデータとリスト型のデータとの型変換を行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
symbol_chars(?Symbol, ?List)
----------------------------------------------------------------------------
●概要
シンボル型と文字型リストとの型変換を行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
number_chars(?Num, ?List)
----------------------------------------------------------------------------
- 42 -
Quasar Prolog リファレンスマニュアル データ型
●概要
数値データと文字型リストとの型変換を行います.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
name(?Symbol, ?List)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性維持のために用意されています.
この述語を利用する場合には,classic.qsrを読み込んでください.
----------------------------------------------------------------------------
char_int(?Char, ?Int)
----------------------------------------------------------------------------
●概要
文字型データと整数型データの型変換を行います.
●解説
Char が文字型データで Int が変数の場合には,文字型データの文字コードに対応
した整数値を Int に返します.Int が整数型データで Char が変数の場合には,整数
型データを文字コードとする文字型データを Char に返します.
Char が文字型データで,Int が整数型データの場合には,文字型データに対応する
文字コードと整数型の値が等しい時に成功します.
●エラー条件
●その他
----------------------------------------------------------------------------
?Struct =.. ?List
----------------------------------------------------------------------------
●概要
structure_list/2 と同様の機能です.
●解説
●エラー条件
●その他
DEC-10 PROLOGとの互換性のために用意されています.
この述語を利用する場合には,classic.qsrを読み込んでください.
- 43 -
Quasar Prolog リファレンスマニュアル デバッガ
----------------------------------------------------------------------------
8. デバッガ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
debug
----------------------------------------------------------------------------
●概要
デバッグモードに入ります.
●解説
デバッグモードに入り,プログラムの実行時にデバッグに必要な情報を記録するよ
うにします.
トレース時にデバッグプロンプトを出力するポートは,既定値に設定されます.こ
の既定値は,leash_default/1 で変更することができます.
すでにデバッグモードに入っている場合には,その旨を表示し,現在の leash ポー
トを表示します.
●エラー条件
●その他
デバッグモードに入ると,制御スタック領域が大量に消費されます.
----------------------------------------------------------------------------
nodebug
----------------------------------------------------------------------------
●概要
デバッグモードを終了します.
●解説
デバッグモードを終了します.すでにデバッグモードを終了している場合には,そ
の旨を表示します.
●エラー条件
●その他
----------------------------------------------------------------------------
debugging
----------------------------------------------------------------------------
●概要
デバッグモードかどうかを調べます.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
trace
----------------------------------------------------------------------------
- 44 -
Quasar Prolog リファレンスマニュアル デバッガ
●概要
トレースモードに入ります.
●解説
トレースモードに入り,プログラムの実行時にデバッグに必要な情報を記録するよ
うにします.
トレース時にデバッグプロンプトを出力するポートは,既定値に設定されます.こ
の既定値は,leash_default/1 で変更することができます.
すでにトレースモードに入っている場合には,その旨を表示し,現在の leash ポー
トを表示します.
●エラー条件
●その他
----------------------------------------------------------------------------
notrace
----------------------------------------------------------------------------
●概要
トレースモードを終了します.
●解説
トレースモードを終了します.すでにトレースモードを終了している場合には,そ
の旨を表示します.
notrace/0 は,トレースモードを終了するのみで,デバッグモードからは抜けませ
ん.デバッグモードからも抜けたい場合には,notrace/0 ではなく,nodebug/0 を使
用する必要があります.
●エラー条件
●その他
----------------------------------------------------------------------------
trace_default(+Mode)
----------------------------------------------------------------------------
●概要
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
leash(+Mode)
----------------------------------------------------------------------------
●概要
デバッグ時のプロンプトを出力するポートを指定します.
●解説
full,tight,half,loose,off
call,exit,redo,fail
- 45 -
Quasar Prolog リファレンスマニュアル デバッガ
●エラー条件
●その他
----------------------------------------------------------------------------
leash_default(+Mode)
----------------------------------------------------------------------------
●概要
デバッグ時のプロンプトを出力するポートを指定します.
●解説
call,exit,redo,fail
full,tight,half,loose,off
●エラー条件
●その他
----------------------------------------------------------------------------
spy
----------------------------------------------------------------------------
●概要
スパイポイントが設定されている述語を表示します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
spy(+Preds)
----------------------------------------------------------------------------
●概要
述語にスパイポイントを設定します.
●解説
●エラー条件
●その他
----------------------------------------------------------------------------
nospy
----------------------------------------------------------------------------
●概要
すべての述語のスパイポイントを除去します.
●解説
●エラー条件
●その他
- 46 -
Quasar Prolog リファレンスマニュアル デバッガ
----------------------------------------------------------------------------
nospy(+Preds)
----------------------------------------------------------------------------
●概要
述語のスパイポイントを除去します.
●解説
●エラー条件
●その他
- 47 -
Quasar Prolog リファレンスマニュアル その他の機能
----------------------------------------------------------------------------
9. その他の機能
----------------------------------------------------------------------------
----------------------------------------------------------------------------
9.1 外部コマンドの実行
----------------------------------------------------------------------------
----------------------------------------------------------------------------
shell(+Command)
----------------------------------------------------------------------------
●概要
指定されたコマンドを UNIX のコマンドとして実行します.
●解説
Command を UNIX のコマンドとして実行します.Command は,シンボル型か文字リ
スト型でなければなりません.
コマンドを実行できた場合には shell/1 は成功し,実行できなかった場合には失敗
します.
●エラー条件
Command がシンボル型か文字リスト型でない場合には,エラーが生じます.
●その他
MS-DOS 版では,メモリ容量の制約で使用できません.
----------------------------------------------------------------------------
9.2 環境の照会
----------------------------------------------------------------------------
----------------------------------------------------------------------------
machine_type(-?Type)
----------------------------------------------------------------------------
●概要
マシンの種類を取得します.
●解説
Quasar Prolog を実行しているマシンの種類を示すシンボル型のデータを Type に
返します.
●エラー条件
●その他
----------------------------------------------------------------------------
machine_instance(-?Host)
----------------------------------------------------------------------------
●概要
マシンのホスト名を取得します.
- 48 -
Quasar Prolog リファレンスマニュアル その他の機能
●解説
ワークステーション版では,Quasar Prolog を実行しているマシンのホスト名を示
すシンボル型のデータを Host に返します.パーソナルコンピュータ版では,quasar
_machine を返します.
●エラー条件
●その他
----------------------------------------------------------------------------
room
----------------------------------------------------------------------------
●概要
メモリの使用状況を出力します.
●解説
メモリの領域別の使用状況と,利用時間,CPU 時間を表示します.
room は常に成功します.
●エラー条件
●その他
----------------------------------------------------------------------------
room(?Area, -Info)
----------------------------------------------------------------------------
●概要
メモリの使用状況を取得します.
●解説
引数 Area に与えることができるのは,Quasar Prolog の記憶領域を示すシンボル
型のデータで半角文字で記述された以下の5種類だけです.
1)atom
2)code
3)control
4)heap
5)trail
これらの値を Area の値として room/2 を呼び出した場合には,info に以下のよう
な記憶容量に関するリストを返します.
[確保容量, 未使用容量]
それぞれの値は整数型で,バイト単位の容量を示します.
2つの引数が両方とも具体化されていない変数の場合には,room/2 は複数回成功
し,そのつど Area に記憶領域と Info に記憶容量に関するリストの組を返します.
引数に正しくない値が与えられた場合には room/2 は失敗します.
●エラー条件
●その他
- 49 -
Quasar Prolog リファレンスマニュアル その他の機能
----------------------------------------------------------------------------
9.3 対話記録
----------------------------------------------------------------------------
----------------------------------------------------------------------------
log
----------------------------------------------------------------------------
●概要
使用者とシステムとの対話内容をファイルへ記録する処理を開始します.
●解説
使用者とシステムとの対話内容をファイル quasar.log へ記録する処理を開始しま
す.quasar.log がすでに存在する場合には,新たな記録は,そのファイルに追加され
ます.
記録を開始できた場合には log/0 は成功します.
●エラー条件
記録ファイルをオープンできない場合に,エラーが生じます.
●その他
----------------------------------------------------------------------------
nolog
----------------------------------------------------------------------------
●概要
使用者とシステムとの対話内容をファイルへ記録する処理を終了します.
●解説
使用者とシステムとの対話内容をファイルへ記録する処理を終了します.
nolog/0 は常に成功します.
●エラー条件
●その他
----------------------------------------------------------------------------
logging
----------------------------------------------------------------------------
●概要
使用者とシステムとの対話内容を記録中かどうかを表示します.
●解説
使用者とシステムとの対話内容を記録中かどうかを表示します.
logging/0 は常に成功します.
●エラー条件
●その他
- 50 -
Quasar Prolog リファレンスマニュアル 述語索引
- 索 引 -
! ................................................................... 6
+Exp1 < +Exp2 ....................................................... 36
+Exp1 =:= +Exp2 ..................................................... 35
+Exp1 =< +Exp2 ...................................................... 36
+Exp1 > +Exp2 ....................................................... 35
+Exp1 >= +Exp2 ...................................................... 35
+Exp1 \== +Exp2 ..................................................... 35
+Goal1 ; +Goal2 ..................................................... 5
+Goal1, +Goal2 ...................................................... 5
+If -> +Then ........................................................ 5
+If -> +Then ; +Else ................................................ 6
?Result := +Exp ..................................................... 34
?Struct =.. ?List ................................................... 43
[+Files] ............................................................ 1
[ a ]
abolish(+Func, +Arity) .............................................. 11
abort ............................................................... 9
apropos ............................................................. 2
apropos(+Name) ...................................................... 3
arg(+Num, +Struct, ?Arg) ............................................ 42
assert(+Term) ....................................................... 10
asserta(+Term) ...................................................... 10
assertz(+Term) ...................................................... 10
atom(+?Atom) ........................................................ 38
atomic(+?Atomic) .................................................... 41
[ b ]
boundp(-?Var) ....................................................... 37
break ............................................................... 9
[ c ]
call(+Goals) ........................................................ 7
catch(+Tag, -Value) ................................................. 8
change_directory(+Dir) .............................................. 33
char_int(?Char, ?Int) ............................................... 43
clause(+Head, ?Body) ................................................ 12
clear_input ......................................................... 14
clear_input(+Stream) ................................................ 13
close(+File) ........................................................ 13
close_all ........................................................... 13
compare(?Rel, +?Term1, +?Term2) ..................................... 36
consp(+?Cons) ....................................................... 39
consult(+File) ...................................................... 1
current_input(-Stream) .............................................. 15
current_operator(+Ops, +Type, +Num) ................................. 18
current_output(-Stream) ............................................. 15
current_predicate(?Symbol, ?Pred) ................................... 3
current_stream(?File, ?Mode, ?Stream) ............................... 14
current_structure(?Symbol, ?Struct) ................................. 3
current_symbol(?Symbol) ............................................. 3
- 1 -
Quasar Prolog リファレンスマニュアル 述語索引
[ d ]
debug ............................................................... 44
debugging ........................................................... 44
delete_file(+File) .................................................. 32
display(+?Term) ..................................................... 24
display(+?Term, +Stream) ............................................ 24
[ e ]
endp(+?Nil) ......................................................... 40
exit ................................................................ 9
[ f ]
fail ................................................................ 6
flash_all ........................................................... 14
floatp(+?Num) ....................................................... 38
for(-Var, +Start, +End) ............................................. 7
for(-Var, +Start, +End, +Step) ...................................... 8
force_output ........................................................ 14
force_output(+Stream) ............................................... 14
format(+Format, +Args) .............................................. 29
format(+Stream, +Format, +Args) ..................................... 28
fresh_line .......................................................... 27
fresh_line(+Stream) ................................................. 27
full_pathname(+Path, -FullPath) ..................................... 33
functor(?Struct, ?Functor, ?Arity) .................................. 42
[ g ]
get(-Char) .......................................................... 20
get0(-Char) ......................................................... 21
[ h ]
halt ................................................................ 9
[ i ]
input_stream_p(+?Stream) ............................................ 40
integerp(+?Num) ..................................................... 38
[ l ]
leash(+Mode) ........................................................ 45
leash_default(+Mode) ................................................ 46
line_count(+Stream, -Count) ......................................... 15
line_position(+Stream, -Pos) ........................................ 15
listing ............................................................. 2
listing(+Pred) ...................................................... 2
listp(+?List) ....................................................... 39
log ................................................................. 50
logging ............................................................. 50
[ m ]
machine_instance(-?Host) ............................................ 48
machine_type(-?Type) ................................................ 48
make_directory(+Dir) ................................................ 33
[ n ]
- 2 -
Quasar Prolog リファレンスマニュアル 述語索引
name(?Symbol, ?List) ................................................ 43
nl .................................................................. 28
nodebug ............................................................. 44
nolog ............................................................... 50
nospy ............................................................... 46
nospy(+Preds) ....................................................... 47
not(+Goals) ......................................................... 7
notrace ............................................................. 45
number_chars(?Num, ?List) ........................................... 42
numberp(+?Num) ...................................................... 39
[ o ]
open(+File, +Mode, -Stream) ......................................... 13
operator(+Ops, +Type, +Num) ......................................... 18
output_stream_p(+?Stream) ........................................... 40
[ p ]
print(+?Term) ....................................................... 24
probe_file(+File) ................................................... 32
[ r ]
read(-Term) ......................................................... 19
read(-Term, +Stream) ................................................ 19
read_char(-Char) .................................................... 20
read_char(-Char, +Stream) ........................................... 20
read_line(-String) .................................................. 19
read_line_chars(-Chars) ............................................. 20
read_line_chars(-Chars, +Stream) .................................... 20
read_string(-String) ................................................ 19
reconsult(+File) .................................................... 1
rename_file(+Old, +New) ............................................. 32
repeat .............................................................. 7
repeat(+Num) ........................................................ 7
retract(+Term) ...................................................... 11
retract_all(+Term) .................................................. 11
room ................................................................ 49
room(?Area, -Info) .................................................. 49
[ s ]
save(+File) ......................................................... 2
see(+File) .......................................................... 16
seeing(-File) ....................................................... 16
seen ................................................................ 16
shell(+Command) ..................................................... 48
skip(+Char) ......................................................... 21
spy ................................................................. 46
spy(+Preds) ......................................................... 46
streamp(+?Stream) ................................................... 40
structure_list(?Struct, ?list) ...................................... 42
structurep(+?Struct) ................................................ 39
symbol_chars(?Symbol, ?List) ........................................ 42
symbolp(+?Symbol) ................................................... 37
[ t ]
tab(+Num) ........................................................... 28
- 3 -
Quasar Prolog リファレンスマニュアル 述語索引
tell(+File) ......................................................... 16
telling(-File) ...................................................... 16
terpri .............................................................. 27
terpri(+Stream) ..................................................... 27
throw(+Tag, +Value) ................................................. 8
told ................................................................ 17
trace ............................................................... 44
trace_default(+Mode) ................................................ 45
true ................................................................ 6
ttyget(-Char) ....................................................... 21
ttyget0(-Char) ...................................................... 21
ttynl ............................................................... 28
ttyskip(+Char) ...................................................... 22
ttytab(+Num) ........................................................ 28
type_of(+?Term, -?Type) ............................................. 41
[ u ]
unboundp(-?Var) ..................................................... 37
user_homedir_pathname(-Path) ........................................ 32
[ w ]
write(+?Term) ....................................................... 23
write(+?Term, +Stream) .............................................. 23
write_char(+Char) ................................................... 25
write_char(+Char, +Stream) .......................................... 25
write_chars(+Chars) ................................................. 25
write_chars(+Chars, +Stream) ........................................ 25
write_line(+String) ................................................. 23
write_string(+String) ............................................... 24
writeq(+?Term) ...................................................... 23
writeq(+?Term, +Stream) ............................................. 23
[ y ]
y_or_n_p ............................................................ 30
y_or_n_p(+Format) ................................................... 30
y_or_n_p(+Format, +Args) ............................................ 30
yes_or_no_p ......................................................... 30
yes_or_no_p(+Format) ................................................ 30
yes_or_no_p(+Format, +Args) ......................................... 31
- 4 -