Пролог - как сделать setof, который возвращает пустой список вместо сбоя

Мне нужен упорядоченный список объектов, которые удовлетворяют цели.setof заботится о порядке, но терпит неудачу, когда никакие объекты не удовлетворяют цели. Я хочу вернуть пустой список вместоfindall делает.

Это работает, но есть ли способ сделать это без среза? Я использую SWI-Prolog.

setof(Object, Goal, List), !; List = [].

Ответы на вопрос(3)

Ваш ответ на вопрос