分类:
2008-11-01 13:03:05
这个想法最早来源于工作流项目中对于脚本的解析形成的脚本翻译,经过若干项目扩展和版本演变,最终形成了用于表格计算的最简化模型。思路:经常处理数学公式计算和图形展示公式曲线,需要一些灵活的处理,流程状态的控制需要根据情况自动处理,因此想写一个解析脚本的东西,最初用与工作流引擎,处理的不是很好,因为是用蛮力去处理状态。不稳定,后来学习编译,觉得能更好的处理,因此重新写了几个版本,用于不同的项目。
1.从表达式中解析变量名,需要蛮力了:) ++这里可以将变量和数值分离,变量进入符号表,我这里没有做,而是采取回调的方式,扩展用户需求的需要。
2.采用逆波兰表达式的形式将表达式处理成后缀表达式,需要判断一些优先级,当然扩展后用户可以自定义优先级,暂时还没扩展呵呵。
3.有了后缀表达式,就可以进行计算了,编译上有详细的描述。
4.这个版本的变量取值采取回调的方式,这样用户可以扩展自己的应用。
5.用户可以导入自己的函数库,这样就可以做更多的应用。
6.用户可以修改呵呵
主要对象: 1.Parser 处理数学公式文件:GridCompute.rar 大小:144KB 下载:下载 2.Interpreter 管理符号 3.BizMgr 业务层面封装和管理Parser和Interpreter 详见代码
|
下面整理了下思路,但是可惜,目前暂时还不支持重载解析,因为需要以更好地方式去识别函数,目前没时间呵呵,不过支持重载肯定是要损失效率的了。
|