c++解析器生成器

C++ parser generator

本文关键字:c++      更新时间:2023-10-16

我正在编写自己的脚本语言,我需要一个软件工具,生成c++代码来解析我的语言。我需要一个词法分析器和一个解析器生成器,生成c++代码。这将是很好的我也能够生成一个Visual c++ 2010项目。建议吗?

http://en.wikipedia.org/wiki/Comparison_of_parser_generators

for C/c++: http://epaperpress.com/lexandyacc/

或者看看:Boost。精神:

"Spirit是一组用于解析和输出生成的c++库实现为领域特定嵌入式语言(DSEL)表达式模板和模板元编程。"

你真的需要新的语言吗?也许使用一些众所周知的语言会更好,比如Lua, Python?

尝试使用Flex和Bison。它们是很好的词法分析器和解析器生成器,对于定义新语言非常有用。

http://en.wikipedia.org/wiki/Flex_lexical_analyser

这是一个老问题,但仍然可能是相关的:因为我对现有的选项不满意,我最近写了一个模板c++解析器生成器,它不需要任何外部工具(你包括一个头文件,并直接在c++源代码中定义语法)。它使用可读的PEG语法,因此不需要单独的词法分析步骤。你可以在Github上查看

您有两种选择:是否通过创建AST(抽象语法树)来创建自己的解析器,那么它对您来说将是一个很好的练习,但它非常长且难以实现。或者您可以使用开放源码的解决方案,例如ANTLR解析器生成器,它具有C/c++语法和预处理器。我从来没有用过它,所以我不能说它对c++的解析有多完整。如果你很着急,想要创建一个好的解析器,你最好使用第二个解决方案

相关文章:
  • 没有找到相关文章