Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
hekate:xtt2 [2008/12/22 15:57] wojnicki |
hekate:xtt2 [2019/06/27 15:49] (current) |
A table provides a //visual// representation of rules, as below. | A table provides a //visual// representation of rules, as below. |
| |
{{xttp-table-new.png|XTT table new format}} | {{xttp-table-new.png|XTT table new format}} FIXME |
| |
Rules in the table are interpreted one by one in a given way (see [[hekate:xtt2#Inference]]), this is the Table Inference. | Rules in the table are interpreted one by one in a given way (see [[hekate:xtt2#Inference]]), this is the Table Inference. |
* //rule-table// (r2t) a given rule in a given table when fired, transfers control to another table, meaning the inference starts at the first rule of the destination table. This is considered the //default// for XTT^2. | * //rule-table// (r2t) a given rule in a given table when fired, transfers control to another table, meaning the inference starts at the first rule of the destination table. This is considered the //default// for XTT^2. |
* //rule-rule// (r2r) a given rule in a given table when fired, transfers control to another rule in another table, or possibly //the same table// (inside table link. | * //rule-rule// (r2r) a given rule in a given table when fired, transfers control to another rule in another table, or possibly //the same table// (inside table link. |
| |
| FIXME: iw: I'm still not convinced about rule-rule links, any advantages? There are some disadvantages though, ie: if we change the rule firing order (let's say bottom-up instead of top-down,) rule-rule links can screw us really bad. Having rule-table links only forces designer to come up with well designed conditions. So, because there are some doubts I would recommend not implementing it for time being at all. |
| |
++++More on intertable links| | ++++More on intertable links| |
tables can be fired in any way, | tables can be fired in any way, |
as long as this contstraint holds. | as long as this contstraint holds. |
| |
| FIXME: iw: not really there might be more than one table with input attributes (or ro, rw) in the condition parts, it might be not doable to infer which table should be run first. |
| There might be an algorithm implemented which finds an order of execution (which table to start with), but any conditions using a N/D value can screw it. |
| I'd suggest choosing an entry table, the one that the inference process starts with, explicitly. |
| |
==== Interpreter Scenarios ==== | ==== Interpreter Scenarios ==== |
* communication (comm) (S <-> E) | * communication (comm) (S <-> E) |
Arrows indicate the System/Environment interaction. | Arrows indicate the System/Environment interaction. |
| |
| FIXME: iw: what's happened to ''ro, rw, wo, state'' classes? |
| |
Discuss ideas here: [[hekatedev:xtt2#Attribute Classes]]. | Discuss ideas here: [[hekatedev:xtt2#Attribute Classes]]. |