我正在尝试更多地了解Prolog中的DCG,并在阅读不同来源时,我注意到在某些情况下短语没有被使用?
在Learn Prolog Now网站上,它提供了以下示例:
s --> np,vp. np --> det,n. vp --> v,np. vp --> v. det --> [the]. det --> [a]. n --> [woman]. n --> [man]. v --> [shoots].
然后,他们使用查询s(X,[])
生成语法中的所有句子.我试过phrase(s,L)
,它也生成了语法描述的所有句子.
使用s(X,[])
和有phrase(s,L)
什么区别?什么时候应该使用短语?