问题 - 断言的动态谓词不会永久保存,在创建新会话后它们丢失了。如何永久保存它们?
我正在使用
Tau Prolog:JavaScript 中的 Prolog 解释器。
我正在从 html 文件中加载 prolog 代码,因为我没有成功从外部 pl 文件中加载它。
在 .js 文件中,我使用以下代码:
session = pl.create();
if(session){
session.consult( "baza.pl" );
//var query ="consult('baza.pl').";
//session.query( query );
//also consults this way
}
然后我稍后查询同一个会话并使用 assertz 插入新的动态谓词。在我重新加载页面之前一切都很好(当新会话产生时,只有原始谓词但没有新谓词)。
我也试过
session.consult( "baza.pl" );
// consulting prolog code from external file but never succeeded.
var query ="load_dyn('baza.pl')";
//loads from internal script tag but not from external file
var query =":- use_module('baza.pl').";
// I think this didn't succeed anyway