是否可以使用 GNU Prolog 显示查询的 WAM 代码?
我知道我可以使用 pl2wam 为程序生成 WAM,但是我对程序执行的查询呢?有没有办法为此显示WAM代码?
我使用的是 x64 Windows 的 1.4.4 版
查询
不会编译为 WAM 代码。它们由顶层动态解释(因此不会生成 WAM 代码)。若要查看编译器将生成的 WAM 代码,请创建一个包含子句的文件,该子句的头包含查询的所有名称变量,并且正文与查询相对应。例如,对于查询:
?- append(X,Y,[a,b,c]).
创建一个包含
query(X,Y) :- append(X,Y,[a,b,c]).
并将其编译为 WAM 文件以查看结果。