在SICStus中,是不能直接使用append这个谓词的,虽然在Amzi和SWI Prolog中这个都作为内建谓词,但是SICStus中,使用append需要先加载lists包。

原话是这样的:

This package defines operations on lists. Lists are a very basic data structure, but nevertheless certain very frequent operations are provided in this package.

这个package定义了列表的操作符,列表时一个非常基本的数据类型,不过一些非常常用的操作符在这个package中提供。

需要加载这个包,输入use_module(library(lists)).
这样就可以使用append/3、delete/3、is_list/1、last/2、max_list/2等有关列表的谓词了。

clip_image001

参考资料:

The Prolog Dictionary: http://www.cse.unsw.edu.au/~billw/prologdict.html
SICStus User’s Manual: http://www.sics.se/sicstus/docs/latest4/html/sicstus.html/

Comments are closed.

Post Navigation