Frank Thelen
Frank Thelen
Me too.
You have a point. I have created a [Dos and Don'ts](https://github.com/frankthelen/rools#dos-and-donts) section with your example. I think it boils down to the question whether premises (`when` functions) are *"pure functions"*...
I added some additional explanation to the readme how premises should look like.
I agree. Your "But this is bad" example above doesn't work because writing... ```javascript createRule(5); createRule(8); ``` ...still lets Rools think that their premise `facts.foo >= value` is identical and...
The idea of option 3 was to create a rule like this (Option 3a): ```javascript const rule = new Rule({ when: ... // like today -- but without optimization whenPure:...
Cool. Will find some time. Thanks.
Yes, Bluebird could be removed without breaking anything, I think. I'll check it. Thanks.
@Hakuz @dbryantm I removed Bluebird in favour of native promises (#30). Please review. All tests are green with Node 8/10/11.
Honestly, requiring lodash's individual method packages is an antipattern. In addition, they are not maintained anymore (deprecated). Rools depends on the main library, but requires individual packages, e.g., `const intersection...
Unfortunately, on the Node side, ES modules are still flagged experimental, even in Node 10. And since Rools is supporting Node >= 8, this does not look like an option...