dcg 相关问题

DCG(Definite Clause Grammars)是一种在Prolog中描述列表的简洁方法。


为什么有些DCG测试用例使用断言(Rest == [])?

这个答案使用断言(Rest == [])? pharse / 3是短语(:DCGBody,?List,?Rest)因为短语/ 2等同于短语(DCGBody,InputList,[])。这只是Rest = []而在测试用例中......

回答 1 投票 0

Prolog DCG中的可选项或重复项

所以我正在使用Definite Clause Grammars在SWI-Prolog中为Pascal编写一个简单的解析器。我不明白如何实现重复(2个或更多)或可选地重复(1个或多个)谓词。为......

回答 1 投票 0

Prolog DCG从字母数字字符构建/识别单词串

因此,我正在使用Definite Clause Grammars在SWI-Prolog中为一些编程语言编写简单的解析器。如果输入字符串或文件对所讨论的语言有效,则目标是返回true,...

回答 1 投票 1

在Prolog中展平列表

我只与Prolog合作了几天。我理解一些事情,但这真让我感到困惑。我想要编写一个带有列表并将其展平的函数。 ? - 展平([a,[b,c] ......

回答 7 投票 22

如何在DCG之后从知识库中生成一些短语?

我在Prolog中将我的语法定义为DCG(Definite Clause Grammar)。现在我想根据我的知识库中的事实生成一些短语。例如,如果我喜欢(标记,......

回答 1 投票 0

如何在Prolog中测试列表是否包含两个彼此相邻的原子?

我试图在GNU Prolog中编写一个谓词,用于测试存储为字符列表的罗马数字是否格式正确。即,如果列表包含[i,c],[i,m]或[x,m],则它是无效的。为......

回答 2 投票 1

句法分析 - 序言

我有一个Definite Clause Grammar:S→a S b | ɛ。这也写成以下规则:s - > [a],s,[b]。和s - > []。这被翻译成Prolog如下:s - > [a],s,[b] ....

回答 1 投票 0

将解析约束添加到DCG

图形标记可以作为不需要单引号的Prolog运算符。 ISO / IEC 13211-1:1995,6.4.2“Syntax.Tokens.Names”的翻译是:graphic_token - > kleene_plus(...

回答 1 投票 2

如何生成网格上的可用步骤列表?

我有一个5x5网格,由max_size(5,5)描述。我需要使用DCG生成该描述中所有单元格的列表。这是我到目前为止的代码:: - use_module(library(clpfd))。 ...

回答 1 投票 0

我不能让我的Prolog DCG使用atom concat

我无法使这个Prolog DCG代码工作:String1 =“”,string_codes(String1,代码),短语(空格(输出),代码)。空格(XXs) - > [X],{X = 32},空格(Xs),{char_code(Ch,X),atom_concat(Ch,...

回答 3 投票 1
推荐问题