performance - C++ Business rule expression parser/evaluation -


i'm looking suggestions of portable lightweight libraries written in c++, support mathematical , business rule expression , evaluation. understand c++ doesn't provide such functionality in stl.

the basic requirement follows:

the expressions evaluated comprised of numbers , strings , variables either representing numbers or strings.

some of expressions expected evaluated many times per second (1000-2000 times), hence there requirement high performance evaluations of expressions.

originally project @ company, encode business rules classes derived base expression class. problem approach not scale number of expressions increases.

i've googled around, "libraries" find pretty simple examples of shunting yard algorithm, of expression parsers, perform parsing , evaluation in same step making them unsuitable continuous reevaluations, , support numbers.

what i'm looking for:

  1. library written in c++ (c++03 or c++11)
  2. stable/production worthy
  3. fast evaluations
  4. portable (win32/linux)
  5. any suggestions building high performance business rules engine.

example business rule:

'rule_result = (remaining_items < min_items) , (item == "beach ball")'

see c++ mathematical expression library outlined in this answer.

but, if want speed, consider compiling expressions c/c++ directly, load them dynamically (shared objects/dlls).


Comments

Popular posts from this blog

java.util.scanner - How to read and add only numbers to array from a text file -

rewrite - Trouble with Wordpress multiple custom querystrings -