PROLOG:运营商什么是“ - >”

时间:2013-06-12 14:22:57

标签: prolog operators dcg

我对prolog很新,如果可能的话,我想要解释一些事情。

究竟是什么

  

“ - >” 中

prolog运营商呢? 我似乎无法找到一个简单直接的答案。

还有一件事......

之间有什么区别:

    phrase--> noun(X),
verb(X).

和这个

phrase:- noun(X),
verb(X).

提前感谢!

2 个答案:

答案 0 :(得分:1)

Prolog支持Definite Clause Grammars的表示法。 -->实际上是一个更精细的谓词的简写。如果你输入:

foo --> noun(X), verb(X).

然后做一个listing,你会看到这样的事情:

foo(A, B) :-
   noun(X, A, D),
   verb(X, D, B).

请参阅此处,例如:Grammars in Prolog

这种简写使得更容易在Prolog中更清晰地表达语法。

答案 1 :(得分:0)

它用于语法分析。您应该阅读this paper about DCG in Prolog