我该如何使用这些 BNF 语法 http://www.devincook.com/GOLDParser/grammars/index.htm哪些在GOLD 元语法 http://www.devincook.com/GOLDParser/doc/meta-language/index.htm(RegExp + BNF)与 TinyPG?我是 BNF 新手,所以大约需要进行什么类型的转换才能将 BNF 转换为 EBNF?
我相信它应该非常简单,因为 TinyPG 需要 RegExp +EBNF与 RegExp + 黄金语法相比BNF.
另外,是否有任何可用语言的 TinyPG 源代码,只是为了看看我需要进行哪种转换?
EBNF 不是entirely向后兼容 BNF,但差异实际上很小,您应该熟悉以下文档:
http://www.cs.cmu.edu/~pattis/misc/ebnf.pdf http://www.cs.cmu.edu/~pattis/misc/ebnf.pdf
首先,您必须处理特殊字符 |:= (用双引号引起来)。
如果解析器可以采用受支持的语言之一,您可以使用 GOLD 元语法引擎来输出解析器 - 而不是使用 TinyPG...
这就引出了一个问题——当你实现它时,你的解析器将使用什么语言?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)