В Турбо Прологе предусмотрен режим организации "бесконечного цикла" через стандартный предикат fail (неудача), который позволяет получать альтернативные решения.
Пусть заданы названия некоторых стран. Необходимо их выдать в той последовательности, в какой они хранятся в базе данных.
Пример организации выдачи всех альтернативных решений - предикат fail
predicates
страна(symbol)
печать_стран
clauses
страна(англия).
страна(россия).
страна(германия).
страна(дания).
печать_стран :- страна(X),
% стандартный предикат выдачи значения X
write(X),
nl, % переход на новую строку
fail. % инициализация возврата
goal
печать_стран.