D中的gppg / gplex等价物?

当我在C#中工作时,我发现gppg和gplex分析器/词法分析器生成器非常适合我的需求。 我想知道D编程语言是否有类似的东西(例如,给定BNF或EBNF中的语法,输出将代码解析/解析为抽象语法树的D代码的实用程序)。

我发现的最接近的是Goldie,但是我很难理解它,所以我无法启动和运行任何东西。


我发现Goldie对于上下文不敏感的语法非常棒,你确定吗? 另外,http://www.wikiservice.at/d/wiki.cgi?GrammarParsers列出了一些,但还不知道哪些还在开发中。 如果ANTLR-D仍然有效,它可能是最好的选择。


Goldie可能是你最好的选择,但也有可以排出D的ragel。这不完全是你要求的(可组合状态机),虽然它可能适用于很多情况,它非常好。

Trunk版本可以通过无证的-E开关编译成D2代码,但我不确定它是多么成熟。

http://www.complang.org/ragel/

链接地址: http://www.djcxy.com/p/63201.html

上一篇: gppg/gplex equivalent in D?

下一篇: c++ what is the advantage of lex and bison to a selfmade tokenizer / parser