|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 7168 (0x1c00)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Fruit_Rule_Bundle, package body Make_Bottom_Left_Place_Free_Rule, package body Mark_Block_For_New_Tower_Rule, package body Mark_Bottom_Left_For_New_Tower_Rule, package body Mark_Top_Block_Of_Marked_Block_Rule, package body Put_Block_On_New_Tower_Rule, seg_04bc2e, separate Decision_System_3
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
separate (Decision_System_3)
package body Fruit_Rule_Bundle is
use Fruit_Kbs.Kbs;
use Fruit_Kbs.Kbs.Fact_Base.Predicate;
use Fruit_Kbs.Kbs.Fact_Base.Predicate.System_Defined_Predicate;
type Rule_Names is (Mark_Bottom_Left_For_New_Tower,
Make_Bottom_Left_Place_Free, Mark_Block_For_New_Tower,
Mark_Top_Block_Of_Marked_Block,
Put_Block_On_New_Tower, No_More);
------------------------------------------------------------------------
package Mark_Bottom_Left_For_New_Tower_Rule is
function Premiss return Fact_Queries;
procedure Action (Objects : Fact_Collection);
end Mark_Bottom_Left_For_New_Tower_Rule;
package body Mark_Bottom_Left_For_New_Tower_Rule is separate;
------------------------------------------------------------------------
package Make_Bottom_Left_Place_Free_Rule is
function Premiss return Fact_Queries;
procedure Action (Objects : Fact_Collection);
end Make_Bottom_Left_Place_Free_Rule;
package body Make_Bottom_Left_Place_Free_Rule is separate;
------------------------------------------------------------------------
package Mark_Block_For_New_Tower_Rule is
function Premiss return Fact_Queries;
procedure Action (Objects : Fact_Collection);
end Mark_Block_For_New_Tower_Rule;
package body Mark_Block_For_New_Tower_Rule is separate;
------------------------------------------------------------------------
package Mark_Top_Block_Of_Marked_Block_Rule is
function Premiss return Fact_Queries;
procedure Action (Objects : Fact_Collection);
end Mark_Top_Block_Of_Marked_Block_Rule;
package body Mark_Top_Block_Of_Marked_Block_Rule is separate;
------------------------------------------------------------------------
package Put_Block_On_New_Tower_Rule is
function Premiss return Fact_Queries;
procedure Action (Objects : Fact_Collection);
end Put_Block_On_New_Tower_Rule;
package body Put_Block_On_New_Tower_Rule is separate;
------------------------------------------------------------------------
package Rule_Bundle is
new Rule_Base.Generic_Rule_Bundle
(The_Bundle => Fruit_Kbs.Decision_Rule_Bundle,
Rule_Names => Rule_Names,
Nothing => Rule_Names'Last,
Rule_1 => Mark_Bottom_Left_For_New_Tower,
Premiss_1 => Mark_Bottom_Left_For_New_Tower_Rule.Premiss,
Action_1 => Mark_Bottom_Left_For_New_Tower_Rule.Action,
Rule_2 => Make_Bottom_Left_Place_Free,
Premiss_2 => Make_Bottom_Left_Place_Free_Rule.Premiss,
Action_2 => Make_Bottom_Left_Place_Free_Rule.Action,
Rule_3 => Mark_Block_For_New_Tower,
Premiss_3 => Mark_Block_For_New_Tower_Rule.Premiss,
Action_3 => Mark_Block_For_New_Tower_Rule.Action,
Rule_4 => Mark_Top_Block_Of_Marked_Block,
Premiss_4 => Mark_Top_Block_Of_Marked_Block_Rule.Premiss,
Action_4 => Mark_Top_Block_Of_Marked_Block_Rule.Action,
Rule_5 => Put_Block_On_New_Tower,
Premiss_5 => Put_Block_On_New_Tower_Rule.Premiss,
Action_5 => Put_Block_On_New_Tower_Rule.Action);
procedure Do_Action (For_Rule : Rule_Id; On_Facts : Fact_Collection) is
begin
Rule_Bundle.Do_Action (For_Rule, On_Facts);
end Do_Action;
end Fruit_Rule_Bundle;
nblk1=6
nid=5
hdr6=a
[0x00] rec0=1c rec1=00 rec2=01 rec3=054
[0x01] rec0=00 rec1=00 rec2=02 rec3=008
[0x02] rec0=1b rec1=00 rec2=04 rec3=01e
[0x03] rec0=19 rec1=00 rec2=03 rec3=02e
[0x04] rec0=16 rec1=00 rec2=06 rec3=000
[0x05] rec0=15 rec1=00 rec2=05 rec3=001
tail 0x21750f36c86895c08a40c 0x42a00088462063c03
Free Block Chain:
0x5: 0000 00 00 02 dc 80 29 6b 5f 42 6f 74 74 6f 6d 5f 4c ┆ )k_Bottom_L┆