可以将所有歧义语法转换为歧义语法吗?

时间:2018-08-20 08:08:33

标签: grammar

有些语法可以通过左递归转换为明确的语法。有没有不能转换为明确语法的语法?

1 个答案:

答案 0 :(得分:2)

大多数实用语言都有明确的上下文无关语法(忽略context-sensitive features,例如变量声明,空格敏感度等)。

但是在给定歧义语法的情况下,没有算法可以找到歧义语法。而且,甚至没有一种算法可以肯定地告诉您给定的语法是否模棱两可。这些都是undecidable problems

而且,要回答您的问题,是的,有无上下文的语言,没有明确的语法。这类语言被称为inherently ambiguous