我使用SWI Prolog
作为备用编译器(v6.6.1)。在安装logtalk
3.0.0.1后,当
logtalk_load(library(types_loader), [source_data(on), report(on)]).
% [c:/users/dizqj373/documents/logtalk/library/termp. c]LGT装载]!域错误:值alias/2不在域指令中! 在指令中:- alias(termp,[变量/2作为变量/2])! 在文件c:/users/dizqj373/documents/logtalk/library/term中。36-37行之间的LGT警告:[Thread 2] c:/users/dizqj373/documents/logtalk/library/lgt_tmp/types_loader.pl:5:初始化目标失败% [c:/users/dizqj373/documents/logtalk/library/types_loader. c]LGT装载]真的。
你能帮助我和指导一点什么可能是错的吗?谢谢!
alias/2
指令是在Logtalk 3中引入的,取代了Logtalk 2.x中使用的可读性较差的alias/3
指令。如果您尝试使用Logtalk 2编译和加载Logtalk 3库,那么您发布的错误将是预期的。x编译器不能识别新的alias/2
指令
如果您刚刚从Logtalk 2更新。x到Logtalk 3,确保您确实在使用新版本编译器。检查LOGTALKHOME
环境变量的当前值是否指向Logtalk 3安装文件夹,而不是旧的Logtalk 2。x文件夹。在启动Logtalk之后,您还可以通过以下查询检查您正在使用的版本:
| ?- current_logtalk_flag(version_data, Version).
此标志也在Logtalk 3中引入。如果您发现无法识别标志的错误,那么您很可能正在加载旧的Logtalk 2。x版本。