Можно ли утверждать список? - PullRequest
1 голос
/ 31 октября 2019

Я хотел бы спросить, можно ли утверждать список вместо единичных терминов? Например, я попробовал следующее:

assert(user_chosen_fruits([Grapes, Apples, Peaches])).

Однако, когда я запросил, используя user_chosen_fruits(X)., он возвращает мне следующее:

X = [_4872, _4878, _4884].

Я пропускаю некоторую обработку вывода,или мое утверждение просто неверно? Я не уверен, возможно ли вообще утверждать списки. Спасибо за любую помощь.

1 Ответ

1 голос
/ 31 октября 2019

Вы утверждаете список переменных , отсюда и привязки, которые вы получаете при вызове user_chosen_fruits/1. Попробуйте вместо этого:

| ?- assertz(user_chosen_fruits(['Grapes', 'Apples', 'Peaches'])).

PS Предикат assert/1 устарел. Вместо этого используйте стандартные предикаты asserta/1 или assertz/1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...