repeat/0

いつも成功する。

repeat

repeat/0 は、繰り返し、無限に成功する。true/0 との違いは、バックトラックされることです。

repeat/0 で定義されるループは、繰り返すので、カット ('!'/0)でのみ終了する。
もし、repeat/0のあとでコールされた述語がいつも失敗すれば、無限ループが出来る。もし、、repeat/0 がconjunction (','/2) のあとで続けば、 その左部分はバックトラックされない。

repeat, write('indefinitely'), nl, fail. 無限に'indefinitely' を現在出力ストリームに書く。
repeat,!. 成功.
repeat,!,fail. 失敗.

標準

この述語は、ISO-Prolog 標準に含まれる。

関連

abort/0, break/0, call/1, _call/1, catch/3, ','(conjunction)/2, '!'(cut)/0, ';'(disjunction)/2, fail/0, true/0, halt/0/1, '->'(if-then)/2, ';'(if-then-else)/2, '\+'(not provable)/1, once/1, throw/1.


戻る 続く..