我正在尝试用 JavaScript 为 Lilypond 音乐符号语言编写一个解析器。我的第一次手动尝试有效,但只能处理非常小的语言子集。由于 Lilypond 使用 bison 文件来定义其语法 [1] 并且 JISON 声称能够从 bison 文件中工作,我的想法可能是使用这些定义在 JavaScript 中生成解析器。
我在任何地方都找不到这方面的任何示例,并且尝试将这些文件直接提供给 JISON 只会引发错误。
解决这个问题的最佳方法是什么?
[1]:见https://github.com/lilypond/lilypond/blob/master/lily/lexer.ll和https://github.com/lilypond/lilypond/blob/master/lily/parser.yy),