clara

http://www.clara-rules.org/
2020-09-11T08:22:48.012100Z

Clara computes query results upfront; when you call (query session ….) you’re basically just doing map lookups. https://github.com/cerner/clara-rules/blob/main/src/main/clojure/clara/rules/engine.cljc#L1998 So I don’t think different ways of doing this would have much difference in terms of performance; you’d probably want something that stores the previous state, calls query on the session, and then compares them.

2020-09-11T08:28:47.013900Z

Clara-rules version 0.21.0 has been released and is available on Clojars. This release primarily has improvements to error reporting and inspectability along with a minor bugfix where exceptions could be thrown on certain Java object fact types. Further details at https://github.com/cerner/clara-rules/blob/main/CHANGELOG.md#0210

13❤️1🎉
sparkofreason 2020-09-11T22:59:38.014400Z

I was thinking more in terms of getting notified per query only when the results changed. I'll look at doing it with a listener.