我正在使用SWI-prolog,并且我正在尝试创建一个helper-function,它将映射到一个列表上,并将每个元素与给定的整数相乘。我的目的是创建一个与Haskell函数multByN x n = x * n相对应的谓词,并在以下意义上使用它: 将所有元素乘以3并产生[3,6,9]的map (multByN 3) [1,2,3] 我在Prolog中搜索了相应的谓词</
正在尝试创建列表理解。我这里的代码在SWI Prolog和Jekejeke Prolog中都可以工作,但是<-操作符在Yap中失败了。找不到原因。必须在/3、findall/3和maplist/2之间创建,因为它们不是Yap的一部分。我相信这三个自制的谓词可以正常工作(它们在Jekejeke Prolog中是这样的)。创建用于列表理解的模板:
V