4 ms·
Besides DROOLS, what other production-ready rule-based-engine options are there?
by kredens 2y ago
Besides DROOLS, what other production-ready rule-based-engine options are there?
- fermigier 2y agoHere a small collection: - https://github.com/nemonik/Intellect https://github.com/nemonik/Intellect (Dead - 2017) - https://github.com/jruizgit/rules https://github.com/jruizgit/rules (dead) - https://github.com/cmaclell/py_rete https://github.com/cmaclell/py_rete (dead) - https://github.com/nilp0inter/experta https://github.com/nilp0inter/experta (dead) - https://github.com/GNaive/naive-rete https://github.com/GNaive/naive-rete (dead) (All of them are rule engine - I guess they implement the Rete algo or some variant but no time to check ATM). Also: "production" is probably false since all of them are dead (or were, last time I checked - I'd be happy to be proven wrong).
- fermigier 2y agoMy best bet would be CLIPS: https://www.clipsrules.net/ https://www.clipsrules.net/ (which has a Python integration, among others).
- c1sc0 2y agoI'm using CLIPS + Python for a kind of Neuro-Symbolic system, kind of an old-school expert system for a specific (small) domain blended with an LLM. Coincidence I see this here.
- felixyz 2y agoClara is a good one. http://www.clara-rules.org/ http://www.clara-rules.org/ Self-plug: my interview with its original author. https://thesearch.space/episodes/2-ryan-brush-on-retaking-rules-for-developers https://thesearch.space/episodes/2-ryan-brush-on-retaking-ru...
- mdaniel 2y agoInterestingly https://github.com/cerner/clara-rules https://github.com/cerner/clara-rules redirects to https://github.com/oracle-samples/clara-rules https://github.com/oracle-samples/clara-rules so I'd guess Cerner was acquired by Oracle, although the repo is Apache 2 and doesn't seem to have any weird stuff in their contributing.md For me, the "It's just Clojure" part is a drawback, not only for me personally but when I think about the kind of audiences that I have traditionally wanted to author rules, between a real, lisp-y, dynamically-typed, programming language and asking folks to write in the Drools DSLs, I'll take my chances with the DSLs
- mjr4184 2y agoI'm another early/core contributor to the clara-rules project. It does utilize a DSL that is implemented and allows for some Clojure - so it does have some coupling on that front. The https://www.clara-rules.org https://www.clara-rules.org webpage shows it has a Java based API that works as far as integrating with the rest of a system (eg. when you aren't using Clojure). The rule structures themself have a data structure representation that is independent of the DSL. You can have other DSL's implemented that target this structure. Again though, it certainly is easiest to do with Clojure. This was touched on in this post https://www.toomuchcode.org/blog/2015/11/14/insta-declarative-dsls https://www.toomuchcode.org/blog/2015/11/14/insta-declarativ...
- zokier 2y agoIBM has full stack of various rule-based stuff, e.g. https://www.ibm.com/docs/en/odm/8.12.0?topic=modes-reteplus-mode https://www.ibm.com/docs/en/odm/8.12.0?topic=modes-reteplus-...
- maho 2y agoI really like nools, which is a drools clone, but for JavaScript. It's fantastic for quick hacks and for getting to know how to write code for rule engines. Sadly, it is no longer maintained.
- rch 2y agoI've been experimenting with Evrete: https://www.evrete.org/ https://www.evrete.org/ It's a little strange, but very flexible. I'd like to try adapting it to evaluate rules specified using annotated Kotlin.
- deleted 2y ago[deleted]
- sixdimensional 2y agoCommercial offering that's been around a long time - InRule [1]. I don't have any affiliation with them, it was considered for a project I worked on in 2005. [1] https://inrule.com/ https://inrule.com/
- dmofp 2y agoFICO makes one. It's called Blaze Advisor and it's used heavily in multiple sectors.
- lunatuna 2y agoWorked with a rete engine in Tibco's CEP. This was used for utility events and deciding what if anything to be done with the event in the context of others and then route it. I've seen it similarly used with bank security and customer management. Another interesting use case was using it as a master data management platform for customer data across a company with a bunch of subsidiaries that had the same customers. What we liked about it was the ability to contextualize events by keeping a history and relationship between objects and events that we could reference as part of our rules. Particularly when we get an event storm and putting more signal into situational awareness when there is a lot of noise.
- sidgarimella 2y agoA lot are dead– we're building a fun new one at https://www.rulebricks.com https://www.rulebricks.com
- fuzztester 2y agoIIRC there was one called ILOG. It was bought by IBM. https://en.m.wikipedia.org/wiki/ILOG https://en.m.wikipedia.org/wiki/ILOG