Prolog,定义Clause Grammar和File

时间:2012-12-07 09:01:43

标签: file prolog dcg

我是Prolog的新手,我刚开始环顾四周。我现在阅读了关于简单逻辑学习Prolog的定义条款语法章节!,所以现在我想开始练习但是我被卡住了。 我必须从具有此语法的文件中读取

setName = {elemen1, element2,..., elementN}.
element1: element2 > element3.

现在我已经读过,当你定义一个DCG时,你有一个免费的解析器,所以我想这样做是为了从我的文件中获取数据到Prolog程序。

我的问题是,在我读过的所有例子中,他们总是提供像

这样的基本词典
article --> [the]

但我不能这样做,因为我不知道文件中会写什么。

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

在SWI-Prolog中,请考虑使用library(dcg/basics)。它提供了可在DCG中使用的构建块。关注文件内容的清晰声明描述,用DCG说明。然后使用library(pio)中的phrase_from_file/2将DCG应用到文件中。