chrysanthemum词法/语法分析框架
chrysanthemum (中文名“菊花”)是一个由C++写成的小巧灵活、高度可伸缩、模块化、高性能的词法/语法分析框架。
chrysanthemum 是一个纯模板库,包含头文件即可使用,且无任何第三方依赖。
chrysanthemum 不同于YACC和ANLTR等词法/语法分析工具(根据文法文件生成解析器代码),它是一个纯模板库,利用
C++的表达式模板,模板元编程等技术,使用一系列简介、小巧、灵活的核心类,自动推导并构建出任意复杂的文本解析对象,
而且chrysanthemum 允许灵活的嵌入C++函数对象作为语义动作,因此具有很好的灵活性和伸缩性。
chrysanthemum 能够极大的简化语法分析器的编写工作,使用户可以在C++环境中“书写”BNF范式从而
快速的构造出对应的词法/文法分析器。同时chrysanthemum尽最大努力保证分析器的性能,力求达到
近似于纯手工代码的效率。
chrysanthemum 大量使用使用表达式模板技术、模板元编程、C++0X新标准 和 函数式编程思想。
注意:编译时请加上 -std=c++0x 或 -std=c++11 参数以打开C++0X支持.
评论
alpaca-llama词法分析和语法分析算法小工具
alpaca是alpaca-llama工具的一部分,主要应用在词法分析算法上面,将描述词法的正则表达式集转换成为相应的DFA,然后采用DOT格式输出。
alpaca-llama词法分析和语法分析算法小工具
0
JavaCC语法分析生成器
JavaCC(JavaCompilerCompiler)是一个用JAVA开发的最受欢迎的语法分析生成器。这个分析生成器工具可以读取上下文无关且有着特殊意义的语法并把它转换成可以识别且匹配该语法的JAV
JavaCC语法分析生成器
0
Arsenal词法分析器
目标组件:可配置的词法分析器可配置的LR-ParserRay:类C的中间语言汇编器相关设计,测试工具已完成组件:可配置的词法分析器可配置的LR-Parser,支持SLR(1),LALR(1)文法设计
Arsenal词法分析器
0
Alex词法生成工具
Alex是一个用Haskell编写的词法生成工具,类似C/C++的lex和flex。Alex是用于生成Haskell扫描仪的类似Lex的工具。有关完整的文档,请参阅doc目录。https://www.
Alex词法生成工具
0
ANTLR词法分析工具
ANTLR(ANotherToolforLanguageRecognition)它是Java开发的词法分析工具,它可以接受词文法语言描述,并能产生识别这些语言的语句的程序。作为翻译程序的一部分,你可以
ANTLR词法分析工具
0