我应该学习 Lex/ YACC 还是 FLEX/Bison

Should I learn Lex/ YACC or FLEX/Bison

我去年参加了编译器课程。现在我想学习如何编写我们自己的词法分析器解析器。我在网上搜索了这两个工具,它们都在 GNU License.

但是还有替代工具,称为 FLEXBISON。我认为他们在 BSD 许可证下,我不确定。但是我不知道该学哪个工具。

对于大多数新手用户来说,这些工具几乎是相同的。相同的输入源将构建一个执行相同任务的 lexer/parser。存在差异,但 none 这会削弱您学习和使用这些工具的能力。只有那些更有经验的编码人员或那些喜欢专注于工具深奥的内部操作的编码人员才会对这些差异感兴趣。

只使用在您的软件环境中最适合您的那个。我教我的学生使用 flex 和 bison,因为他们可以体验相同的工具,而不管平台如何(Windows、linux、OSX 等)。