【发布时间】:2014-04-05 22:01:56
【问题描述】:
我是 Prolog 的新手,我正在使用 SWI-Prolog v6.6 将断言存储在 *.pl 文件中。
:- dynamic fact/2.
assert(fact(fact1,fact2)).
使用上面的代码,我可以进行断言并且工作正常,但问题是当我关闭 SWI-Prolog 并再次打开 *.pl 文件时,我所做的断言消失了......
有没有办法做出断言,即使我退出 Prolog 进程,这些断言也会被存储?
抱歉我的英语不好,谢谢! (:
【问题讨论】:
-
您必须明确地将它们写入文件。它们在内存中持久存在,但是当 Prolog 关闭时,除非写入文件,否则一切都消失了。
-
参见,例如,stackoverflow.com/questions/2921937/…,它使用爱丁堡风格的 I/O。
-
哇,谢谢@mbratch,它就像我想要的那样工作。 :D
标签: prolog persistence