我正在寻找一个解析器生成器,它可以根据LL(k)语言的EBNF为我提供C#解析器,并生成在EBNF中定义的类型的类。
ANTLR (无需多言)
Gold 作为一个解析器生成器还是不错的。
完整披露:这是我写的。欢迎提问。
编辑:“C#解析器生成器”在谷歌搜索中排名最高的结果是由一位名叫“Tomassetti”的人撰写的,他声称我的解析器生成器“不能真正地独立使用”,这就像说一台电脑“不能真正作为独立的游戏主机使用”,因为它还可以进行网络浏览和制作电子表格。确实,在安装Visual Studio扩展后,您必须单独到NuGet获取运行时库(Loyc.Syntax),但我不认为这就是他的意思,也不认为他真正尝试过使用它。LLLPG的设计是一种特性,而不是一个错误。我只能说,请尝试一下,并让我知道您的想法。