C++
我正在寻找支持数学和业务规则表达式和评估的可移植轻量级库的建议。我了解C++
在STL
.
基本要求如下:
要评估的表达式将由数字和字符串以及表示数字或字符串的变量组成。
一些表达式预计每秒会被评估多次(1000-2000 次),因此需要对表达式进行高性能评估。
最初是我公司的项目,我们将所有业务规则编码为派生自基本表达式类的类。问题是随着表达式数量的增加,这种方法不能很好地扩展。
我搜索了一下,但我能找到的大多数“库”都是调车场算法的非常简单的例子,大多数表达式解析器在同一步骤中执行解析和评估,这使得它们不适合连续重新评估,并且大多数只支持数字。
我在找什么:
- 用 C++(C++03 或 C++11)编写的库
- 稳定/值得生产
- 快速评估
- 便携(win32/linux)
- 关于构建高性能业务规则引擎的任何建议。
示例业务规则:
'rule_result = (remaining_items < min_items) and (item == "沙滩球")'