expert-0.0.1 doesn't have any documentation.
expert-rs
A cache friendly and type safe expert/business rules system written in Rust.
Usage
Don't. It's not even Alpha quality, yet.
Eventually you'll be able to add a dependency ala
[]
= "0.10"
And then write code similar to
extern crate expert;
// A fact type
// Another fact type
Features
- The code compiles!
- Alpha (fact analysis) nodes!
- Statement Builder!
In-Progress
- Rule Builder!
- KnowledgeBase Builder!
- Alpha, Beta node compilation and layout!
- Networks represented as a set of arrays!
- Alpha network ordered from most depended on nodes to least!
- Beta network ordered from least depended to most!
- Chaining!
- Forwards!
- Backwards! (w/ Iterators)
- Returns, Insert within rule resolution
- All of those sweet, sweet macros
Not In-Progress (everything else!)
- Variables
- Fact
- Field
- Complex logic ((this AND this AND NOT that) OR other)
- DSL
- Fast rule compilation times
- Rule optimizations
- Rule sanity checks
- In-place fact modification
Why?
- Expert/Business Rules Systems are still in use in a variety of industries
- I wanted to understand how the algorithms worked
- I wanted to push my software development expertise
- I wanted to see if I could write it without pointers, fat or otherwise
- It's hard
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Serde by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.