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.
ここでは、対話的プログラミングツール"iptool"をコンサルトします。
以下のような内容のファイル"iptool"を述語edit/1を使って作成して下さい(editor/2を参照して下さい)。ファイルに書き込み、エディタを終了すると、IF/Prologは自動的にファイルをリコンサルトし、インタプリタレベルに戻ります。
?- edit( iptool).
% two built-in predicates are used in this program that
% allow users to write interactive programs in IF/Prolog
% "read(Input)", "write(Output)". Combined with "asserta"
% they form this interactive programming tool.
:- op(100,xfy,reports_to).
iptool :-
write('To finish, type in: stop.\n'),
write('Type in terms like: X reports_to Y.\n'),
repeat,
write(:),tab(1),
read(Term),
interpreter(Term).
interpreter(stop) :- !.
interpreter(X reports_to Y) :-
!,
asserta(X reports_to Y),
fail.
interpreter(_):-
!,
write('"X reports_to Y." expected, try again:\n'),
fail.
reconsult: file 'iptool' loaded in 1 sec.
yes
?- _
この対話的プログラミングツールをコマンドiptoolで動かし、アサ−トしたい節を入力して下さい。
?- iptool.
To finish, type in : stop.
Type in terms like : X reports_to Y.
: 'Mr.Friday' reports_to 'Mr.Monday'.
:_
.
.
.
: stop.
"stop."を入力すると、iptoolは名前を要求するのを止めます。
述語"listing(reports_to)."は、以下のように"iptool"によってアサ−トされた入力を示します。
?- listing(reports_to).
....
|