A computer program product for implementing a rule-based programming
language, the computer program product comprising a computer usable
media, having computer program code thereon, comprises a single rule
language supporting a plurality of rulesets, an object-oriented framework
that compiles the rulesets into a collection of framework objects, and a
plurality of pluggable inference engines for processing the collection of
framework objects.