混淆了如何在更新知识库时使用\ =

时间:2018-10-20 04:37:08

标签: prolog

Swi-prolog语法问题;我很困惑如何在更新知识库时使用\ =。我正在写一个谓词,我要打印出karen可以播放的所有歌曲(除了heyJude)。

canPerform(karen, Song) :-
   song(Song =\= heyJude). 

这准确吗?

1 个答案:

答案 0 :(得分:0)

Prolog 不是是一种功能编程语言。您可能想要:

canPerform(karen, Song) :- song(Song), Song \== heyJude.

此外,Prolog编码样式指南通常仅对变量指定CamelCase。因此,我建议您将原子重命名为:

can_perform(karen, Song) :- song(Song), Song \== hey_jude.