Efficient Rule-Driven Systems in Python
Part 1: The Rules We Live By
Rules Are Everywhere
Everywhere, I say!
Correctness
Efficiency
Coding the Rules: Option 1
Coding the Rules: Option 2
Coding the Rules: Option 3
Predicate Dispatch - A better way
Correct and Efficient
Predicate Dispatch Applications
Papers on Predicate Dispatch
Part 2 - Implementing Rules with PyProtocols’ ‘dispatch’ package
Builds on the Chambers&Chen algorithm
Collection of Rules = Generic Function
Predicate + Body = Rule
Most Specific == Logical Implication
Refuse the Temptation to Guess
Implication Detection isn't (Quite) Perfect
Method Combination
Standard Method Combination
Custom Method Combination
Specifying Method Combination
Decentralized Rules -> Modular Extensibility
Past, Present, and Future (Bonus material)
Great Moments in Forgetfulness
When is it safe to forget about things?
The Evolution of Dispatch
Other Implementations
Predicate Dispatch without Generic Functions
Author: Phillip J. Eby
E-mail: pje@telecommunity.com
Homepage: http://peak.telecommunity.com/