首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Prolog:追加列表失败,并且不太确定原因

Prolog:追加列表失败,并且不太确定原因
EN

Stack Overflow用户
提问于 2013-04-25 14:40:17
回答 1查看 1.4K关注 0票数 0

我对prolog比较陌生,我想做的是创建一个列表,但我似乎遇到了一个错误,我不太确定原因。

这是更详细的展望的跟踪,这是自然语言解析器的一部分。

出口:(75,513) adj(女性)?蠕动

调用:(75,513)列表:append(_G5921885,adj(女性),_G5921887)?蠕动

退出:(75,513)列表:追加([],adj(女性),adj(女性))?蠕动

呼叫:(75,513) np2(七项全能,获胜者,曾,运动员,_G5921869,_G5921887,[],adj(女子))?

所以..。起初,every是OK的,并被添加到列表中,但当它试图向列表中添加第二个项目时,就会发生这种情况……

呼叫:(75,514) adj(七项全能)?蠕动

出口:(75,514) adj(七项全能)?蠕动

调用:(75,514)列表:append([],adj(七项全能),adj(女性))?蠕动

失败:(75,514)列表:append([],adj(七项全能),adj(女性))?蠕动

下面是附加列表的代码:

append(列表,adj(H),TargetList),

np2(T,Rest,Rem,List,TargetList)。

如果有人能分享一些关于我哪里出了错以及如何解决它的一些光,那就太好了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-25 15:36:09

就在这里:

代码语言:javascript
复制
Call: (75,514) lists:append([], [adj(heptathlon)], [adj(womens)])

这是不可能成功的,因为append/3的定义与此相矛盾。

追加(?列表1,?列表2,?列表1和列表2):

List1AndList2是List1和List2的组合

在您的例子中,List1是空列表[],所以List1andList2应该与List2相同,但事实并非如此,我真的不知道您的程序的逻辑有什么用。如果您试图使用append/3来附加List1和List2 (而不是拆分List1andList2),那么应该确保List1andList2在调用append/3时是一个未实例化的变量。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16208038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档