equal
deleted
inserted
replaced
30 |
30 |
31 object's `__registry__` : object's `id` : [list of app objects] |
31 object's `__registry__` : object's `id` : [list of app objects] |
32 |
32 |
33 The following rules are applied to select an object given a register and an id and an input context: |
33 The following rules are applied to select an object given a register and an id and an input context: |
34 * each object has a selector |
34 * each object has a selector |
|
35 |
35 - its selector may be derivated from a set of basic (or not :) |
36 - its selector may be derivated from a set of basic (or not :) |
36 selectors using `chainall` or `chainfirst` combinators |
37 selectors using `chainall` or `chainfirst` combinators |
|
38 |
37 * a selector return a score >= 0 |
39 * a selector return a score >= 0 |
38 * a score of 0 means the objects can't be applied to the input context |
40 * a score of 0 means the objects can't be applied to the input context |
39 * the object with the greatest score is selected. If multiple objects have an |
41 * the object with the greatest score is selected. If multiple objects have an |
40 identical score, one of them is selected randomly (this is usually a bug) |
42 identical score, one of them is selected randomly (this is usually a bug) |
41 |
43 |