我知道这是一个非常简单的问题,但我似乎遇到了一些问题。
我试图使用porter_stem阻止一个单词列表,但是我收到一个错误:
超出本地堆栈
这是我的代码:
stemming([],[]).
stemming([H|T], A) :-
stemming(T,Answer),
porter_stem(H,S),
append(Answer,S,A).
基本上,伪代码如下:
for all items in list
stem item
add item to list2
return list2
有人可以指出我正确的方向吗?
答案 0 :(得分:1)
根据您的prolog实现,考虑使用maplist/3
或等效内容:maplist(porter_stem, List, Result).
之类的内容就足够了。
如果您有兴趣学习如何构建正确的递归,请发表评论,我会尝试扩展我的答案:)