4 ms·
I'm in complete agreement. I didn't mean to give off the idea that you couldn't use Expert Systems anymore, merely that the research and publishing interest die
by saosebastiao 10y ago
I'm in complete agreement. I didn't mean to give off the idea that you couldn't use Expert Systems anymore, merely that the research and publishing interest died. Implementations have definitely improved. Supposedly, Charles Forgy has continued researching and implementing improvements to his original RETE algorithm, but both the research and implementations are entirely proprietary and mostly inaccessible.
I likewise find it sad that the idea has died so much that we continue to build square wheels that were made obsolete by rule engines. I remember a futile attempt at Amazon to get a team to scrap their system in favor of a RETE based rule engine. Theirs was a poorly performing and fragile homemade "rule engine" that compiled xml rules into if/else statements, which after tens of thousands of rules had slowed to a snails pace. Somehow the magic of O(1) escaped them, and they practically required me to reimplement their system from scratch in order to convince them. So I let it go.
I had never considered the possibility of killing callback hell with a rules engine but I can definitely see it now. I personally have toyed with building a compiler that eschews the pipeline architecture with a rules engine where both analyses and optimizations are implemented as rules. I definitely think there is a world of possibilities out there, but maybe we'll need another AI winter before people consider them again.
- PaulHoule 10y ago+1 for the rules-driven compiler, it's one of those things that could put programming language innovation into many more hands.
- trapperkeeper79 10y agoGetting RETE right isn't trivial. I tried looking into the fundamentals a few months ago, and was very unsatisfied - it felt like people explaining it knew parts of it but not the whole thing. I guess it is good that we have some open source implementations that can be reverse engineered by someone motivated enough.