首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用BNF的编译器编译器

使用BNF的编译器编译器
EN

Stack Overflow用户
提问于 2014-10-24 05:36:10
回答 1查看 1.9K关注 0票数 7

为什么没有直接使用BNF的解析器生成器?

我熟悉JavaCCAntlr,最近还接触到了Parse2。似乎每一个都有它自己的符号。BNF非常容易阅读,而其他符号则不容易。是不是有什么内在的原因导致我不能将BNF提供给编译器编译器并得到解析树呢?

EN

回答 1

Stack Overflow用户

发布于 2014-10-24 12:38:11

Marpa::R2Marpa的Perl接口,是一个通用的BNF解析器,它接受直接的BNF作为语法描述,并用Perl语言生成一个解析器。这是一个几乎从字面上取自BNF grammar tutorial的例子。

<tree>  ::= '(' <list> ')'
<list>  ::= <thing> | <list> ',' <thing>
<thing> ::= <tree> | <name>             
<name>  ::= 'ant' | 'bat' | 'cow' | 'dog' | 'cat'

The full code example.

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

https://stackoverflow.com/questions/26537890

复制
相关文章

相似问题

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