gpt4 book ai didi

syntax - prolog,非常简单的dcg语法

转载 作者:行者123 更新时间:2023-12-02 05:13:59 24 4
gpt4 key购买 nike

我试图理解 prolog 和 dcg 的基本语法,但是很难获得有关真正基本内容的正确信息。看看下面的代码,我基本上只是想实现这样的目标:

Output = te(a, st).

Code:
test(te(X,Y)) --> [X], test2(Y).
test2(st(_X)) --> [bonk].

?- test(Output, [a, bonk],[]).
Output = te(a, st(_G6369)).

我想做的就是在末尾添加单词“st”,我最接近的方法就是这样做,但不幸的是 st 后面跟着一堆废话,很可能是因为单例_X。我只是希望我的 Output 包含类似:te(a, st).

最佳答案

如果您想接受[Term, bonk]形式的输入并获取te(Term,st),您应该更改test/2 code> 接受 bonk 返回 st:

test(te(X,Y)) --> [X], test2(Y).
test2(st) --> [bonk].


?- test(Output, [a, bonk],[]).
Output = te(a, st).

关于syntax - prolog,非常简单的dcg语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13957146/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com