MINERVA superseeded IF/Prolog.
Please see
http://www.ifcomputer.co.jp/MINERVA
for details.
We discontinued to sell IF/Prolog Dec 31. 2003.
For current customers, we continue to provide
professional support for IF/Prolog until Dec 31, 2008.
# prolog_flag(+フラグ,-旧スイッチ,+新スイッチ)
prolog_flag/3は、IF/Prologの大域的な状態をチェックしたり変更するのに使用します。IF/Prologシステムでは、以下のフラグを使用しています。
iso, save_var_name, single_var_check
syntax_warnings, notify
「旧スイッチ」と「新スイッチ」は、どちらもon/offのいずれかでなければなりません。
以下の説明は、「新スイッチ」がonの場合に有効になる機能について述べています。
「新スイッチ」がoffの場合には、その機能が無効になります。
isoフラグ(デフォルトはoff)は、IF/Prologのパ−サが、ISOの構文規則を厳密に使用するように強制します。また、定数を要求する引数に計算式を書くことができなくなります。
yes
?- arg(1+1,a(b,c),X).
X = c
yes
?- prolog_flag(iso,_,on).
yes
?- arg(1+1,a(b,c),X).
E X C E P T I O N:integer_expected:arg(1 + 1,a(b,c),_298)
?-
フラグsave_var_namesは、コンサルトするときに変数名を格納するかどうかを決定します。
フラグsingle_var_check(デフォルトはon)がonの場合、変数が節の中で1度しか使用されなかった時にIF/Prologが警告を出します。警告を出したくないときは、変数名をアンダ−スコアで始めてください。
フラグsyntax_warnings(デフォルトはon)は、構文上の警告を出すかどうかを決定します。
notifyモ−ド(デフォルトはon)は、フラグnotifyを使ってoffにできます。
(指令 nonotify を参照して下さい。)
atom_expected 「フラグ」がアトムでない
out_of_range 「フラグ」が正しいアトムでない
on/off_expected 「新スイッチ」がonでもoffでもない
|