我最近了解到C 没有上下文无关语法。我最近还了解到gcc 曾经使用 yacc 来解析 C。yacc 实用程序的手册指出“[yacc] 接受的规范类别是非常通用的:具有消歧规则的 LALR(1) 语法”,而维基百科指出LALR 语法是确定性上下文无关语法的子集,它们是上下文无关语法的子集。如果 C 甚至不是上下文无关的(更不用说确定性上下文无关语言),但 yacc 可以解析 C,那么 yacc 可以解析什么类语言(如果不是具有 LALR(1) 的上下文无关语言的子集)语法?
grammar parsing yacc formal-languages
formal-languages ×1
grammar ×1
parsing ×1
yacc ×1