Prolog 符号表序言
我正试图在Prolog中构建一个符号表。到目前为止,我已经定义了两个谓词,但如何使用它们或更正它们却超出了我的理解范围。我想得到一些关于如何进行的帮助。多谢各位Prolog 符号表序言,prolog,global-variables,swi-prolog,Prolog,Global Variables,Swi Prolog,我正试图在Prolog中构建一个符号表。到目前为止,我已经定义了两个谓词,但如何使用它们或更正它们却超出了我的理解范围。我想得到一些关于如何进行的帮助。多谢各位 create_empty_table:- use_module(library(assoc)),empty_assoc(A), b_setval(idex,A). add_symbol(Key,Value):- b_getval(idex,Output), get_assoc(Key, idex,Outpu
create_empty_table:-
use_module(library(assoc)),empty_assoc(A),
b_setval(idex,A).
add_symbol(Key,Value):-
b_getval(idex,Output),
get_assoc(Key, idex,Output, idex,[Value|CurrentValue]),
b.setval(idex,[Value|CurrentValue]).
第一个很好用。我不知道如何使用第二个。b_getval给了我一个实例化不足的错误。说真的:这不是进入Prolog的好开始。
b_getval
需要您尝试检索的全局值的名称(原子)。您正在向b_getval
传递两个uinstantiated变量,因此它不知道您所指的名称。您需要将assoc名称传递给添加\u symbol
。