词法/语法分析框架 chrysanthemum

码农软件 · 软件分类 · 语法解析工具 · 2019-12-12 15:41:30

软件介绍

chrysanthemum (中文名“菊花”)是一个由C++写成的小巧灵活、高度可伸缩、模块化、高性能的词法/语法分析框架。
chrysanthemum 是一个纯模板库,包含头文件即可使用,且无任何第三方依赖。

chrysanthemum 不同于YACC和ANLTR等词法/语法分析工具(根据文法文件生成解析器代码),它是一个纯模板库,利用
C++的表达式模板,模板元编程等技术,使用一系列简介、小巧、灵活的核心类,自动推导并构建出任意复杂的文本解析对象,
而且chrysanthemum 允许灵活的嵌入C++函数对象作为语义动作,因此具有很好的灵活性和伸缩性。

chrysanthemum 能够极大的简化语法分析器的编写工作,使用户可以在C++环境中“书写”BNF范式从而
快速的构造出对应的词法/文法分析器。同时chrysanthemum尽最大努力保证分析器的性能,力求达到
近似于纯手工代码的效率。

chrysanthemum 大量使用使用表达式模板技术、模板元编程、C++0X新标准 和 函数式编程思想。


///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
chrysanthemum 完全以C++0X新标准写成,因此只能用于对C++0X支持比较好的编译器中,MSVC系列因没有提供可变模板参数的支持,////
无法使用。目前仅在GCC4.5和GCC4.6环境下测试通过,WINDOWS环境可以选择使用MINGW。                                     ////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////
注意:编译时请加上 -std=c++0x 参数以打开C++0X支持//////////////
////////////////////////////////////////////////////////////////

chrysanthemum 很大程度上受到 Joel de Guzman 所编写的boost.spirit库的启发,但是力求更灵活,更高效,且更具收缩性。

本版本(V 0.2.1版)是chrysanthemum第一个正式对外发布的版本,必然存在许多不足和缺陷。如果您有好的建议或问题请发送至ioriiod0@gmail.com

本文地址:https://codercto.com/soft/d/20995.html

On LISP

On LISP

Paul Graham / Prentice Hall / 09 September, 1993 / $52.00

On Lisp is a comprehensive study of advanced Lisp techniques, with bottom-up programming as the unifying theme. It gives the first complete description of macros and macro applications. The book also ......一起来看看 《On LISP》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具