【发布时间】:2016-11-05 14:28:53
【问题描述】:
我对序言很陌生。使用 SICStus,当我对已经查阅过的文件进行更改时,SICStus 无法识别这些更改。唯一的方法是我关闭窗口并重新启动它。但显然这是不切实际的,因为每次更改文件时都关闭窗口不仅烦人,而且浪费时间。我正在使用 Windows 版本的 Sicstus 4.2.1。到目前为止,我已经尝试过命令consult(file)、reconsult(file)、compile(file),但没有一个有所作为。 SICStus 只是忽略所做的更改,直到我关闭并打开窗口。
比如说,我有谓词 test/2。然后我删除了它并保存了文件。然后我输入 reconsult(file)。我的期望是 SICStus 会识别所做的更改并说谓词不存在。但它继续存在,就好像它存在一样。只有在我关闭窗口并重新开始之后,它才会正确地抱怨谓词不存在。
奇怪的是,它可以识别新添加的谓词 reconsult(file) 但如果它被更改或删除,它不会。
【问题讨论】:
-
reconsult(file) 应该识别谓词的更改,即是否添加或删除子句。这不是发生在你身上吗? PS。在SICStus IDE 中,您可以通过按下按钮重新启动 SICStus 顶层。
-
就我而言,不,reconsult 根本无法识别更改。
-
这很奇怪,而不是当我在 4.2.1 中尝试此操作时发生的情况。请将复制者发送给 SICStus 支持,以便我进行调查。
标签: prolog sicstus-prolog