首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >哪个解析器生成器软件运行在C#上,用左递归解析语言,并能生成抽象语法树?

哪个解析器生成器软件运行在C#上,用左递归解析语言,并能生成抽象语法树?
EN

Stack Overflow用户
提问于 2012-07-19 18:25:47
回答 1查看 788关注 0票数 3

我花了一个早上的时间弄清楚基本的ANTLR,才发现它是LL的。我需要在语法中保留左递归,以便语法树具有左到右的结合性。

编辑2:最近需要另一个解析器生成器。虽然MPLex和MPPG可以工作,但是配置起来有点长,所以我想我应该再看一遍。这一次,我遇到了Hime生成器--不到一两个小时,我就有了一个解析器,将基本表达式转换为可以编译和调用的LINQ表达式。这是愚蠢的简单,我推荐它比MPLex和MPPG。

编辑1:黄金分析器做我需要的,但它的源代码是不可用的,因此禁止使用它。

MPLex和MPPG是微软的官方产品,分别是Lex/Flex和Bison/Yacc。关于它们的文档不多,它们也不完全是上述开源项目的克隆,但它可以满足我对这些项目的需求。如果你不需要处理现实世界的政治,我推荐黄金,因为它有一个很好的调试图形用户界面和一切,但如果你被迫开放源码或微软的官方项目,MPLex和MPPG可能是一条路。请注意,有两个应用程序实际上只是GPLEX和GPPG的衍生产品。后两者可能比微软的衍生产品更现代化,因为我认为微软放弃了这个项目。我唯一能找到的微软衍生产品的文档包含在VS 2008 SDK中的两个PDF文档中。微软采取了pdf的解释他们的用法,尽管推出了exe与VS 2010 SDK。不过,看起来无论是pdf还是exe都不会随2012年上市。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-19 18:52:40

生成C#代码的最流行的方法之一是:黄金解析系统 (LALR)。

有关许多解析器生成器的比较,请参见:发电机

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11567051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档