首页 > 解决方案 > 将 W3C 的 EBNF 转换为 ANTLR

问题描述

我想从描述FTL 语法的语法中生成一个 Swift 解析器。

是否有任何工具可以EBNF -> ANTLR自动进行转换?或者这两种语法至少是可转换的?

语法本身是从用 JavaScript 编写的规则集自动生成的。另一种可能的解决方案是更新rules -> EBNF 序列化程序以输出 ANTLR 语法。但我是语言的新手,不确定是否可以处理它。

标签: antlrantlr4bnfebnfproject-fluent

解决方案


是否有任何工具可以自动进行 EBNF -> ANTLR 转换?

AFAIK,没有这样的工具。

或者这两种语法至少是可转换的?

不,EBNF 允许使用 ANTLR 不支持的间接左递归规则(尽管它确实支持直接左递归规则)。


推荐阅读