如何解决SWI-Prolog编辑器接受无效的编码
(原为:参数未充分实例化)。
我正在使用SWI-Prolog版本8.2.1学习Prolog,并阅读立即学习Prolog!书。
我的知识库5(也可以在线Learn Prolog Now!使用)有问题:
loves(vincent,mia).
loves(marcellus,mia).
loves(pumpkin,honey_bunny).
loves(honey_bunny,pumpkin).
jealous(X,Y) :- loves(X,Z),loves(Y,Z).
当我咨询它时,SWI-Prolog引发错误:
错误:参数没有被充分实例化
似乎很奇怪,因为这本书被许多人推荐为一本不错的Prolog书,
并且我还在SO Different query results in prolog上找到了一个关于相同代码的问题
没有提到任何错误。
这是SWI-Prolog的问题吗?
还是代码错误?
预先感谢。
更新
好吧,事实证明这根本与代码无关。
我复制了本书pdf版本中的代码,并将其粘贴到
SWI-Prolog编辑器并保存。
使用记事本++打开文件,在“编码”菜单下,它显示“ UCS2 LE BOM”,而对于文本文件则应为“ UTF-8”。
我将编码更改为UTF-8,SWI-Prolog对其进行了编译。
结案了。
但是,让编程编辑器愉快地接受无效的文件很重要
甚至没有警告。
我以为我可以删除这个问题,但这也许可以帮助其他人 处理相同的问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。