【发布时间】:2023-03-16 22:18:01
【问题描述】:
我正在尝试在我的方法签名中使用 Prolog 的参数模式指示符 (https://www.swi-prolog.org/pldoc/man?section=argmode)。
没有指标,我的功能按预期工作(例如,palindrome([1,2,1]) 为真):
palindrome(List) :-
reverse(List, List)
但是当我说
palindrome(+List) :-
reverse(List, List)
我每次都弄错了。我没有收到任何错误或警告。我也尝试了以下但没有运气:
palindrome(+List) :-
reverse(+List, +List)
所以我很确定我以某种方式错误地使用了这些指标。任何人都可以帮忙吗?我正在使用 SWI-Prolog 和 SWISH 在线 IDE。
【问题讨论】: