succeeds always....
Move to
=> <=
Darueber Spitze
See also
abort/0
::(Apply)/2
break
call/1
fcall/1
catch/3
','(Conjunction)/2
!(Cut)/0
';'(Disjunction)/2
<-(Eval)/2
fail/0
halt/0/1
->(If-then)/2
';'(If-then-else)/2
'\+'/1
once/1
repeat/0
throw/1
true/0
IF Computer > MINERVA > Manual > Reference > Predicates > Logic and control > repeat/0

repeat/0

succeeds always.

repeat

repeat/0 succeeds repeatedly and indefinitely. The difference to true/0 is that it can be backtracked.

Loops which are defined with repeat/0 should be finished with a Cut ('!'/0), because otherwise the loop can be repeated.
If a predicate, called after repeat/0, always fails, you can have an indefinite loop. If repeat/0 follows after a conjunction (','/2) the part left of it won't be backtraced any more.

Examples

repeat, write('indefinitely'), nl, fail. Writes indefinitely 'indefinitely' to the current outputstream.
repeat,!. Succeeds.
repeat,!,fail. Fails.

Standard

This predicate is part of the ISO-Prolog Standard.

See also

abort/0, break/0, call/1, fcall/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.

read on...
MINERVA
ifcomputer logo
f
Expert Services on the Web
Sprache
English
Japanese
Server
USA
Japan
Site Access
Local Index
Local Contents
Site Contents
Site Index
Printer Friendly
For imode
For PDA
Search
document: http://www.ifcomputer.co.jp/MINERVA/Manual/Reference/Predicates/logic_and_control/repeat/home_de.html
published 2008/7/7 update 2001/2/7 (c) 1996-2006 IF Computer Japan
IF Computer 5-28-2 Sendagi, Bunkyo-ku Tel +81-3-5814-3352 info@ifcomputer.com
Customer Support Tokyo 113-0022 Japan   http://www.ifcomputer.com
scroll to top managed with ubiCMS