DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ B T

⟦726de72e0⟧ TextFile

    Length: 1178 (0x49a)
    Types: TextFile
    Names: »B«

Derivation

└─⟦149519bd4⟧ Bits:30000546 8mm tape, Rational 1000, !projects 93-07-13
    └─ ⟦124ff5788⟧ »DATA« 
        └─⟦this⟧ 
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
    └─ ⟦6f12a12be⟧ »DATA« 
        └─⟦this⟧ 
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
    └─ ⟦d65440be7⟧ »DATA« 
        └─⟦this⟧ 
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦e24fb53b7⟧ 
            └─⟦this⟧ 

TextFile

separate (Bbr_General_Bundle)
package body Pair_Ball_And_Boxes_Rule is

    function Premiss return Join_Descriptor is
    begin
        return (Balls.Exist ((Size   => Say_It_Is (S),
                              Colour => Say_It_Is (C),
                              Place  => Is_Equal (On_Heap))),

                Boxes.Exist ((Colour => Is_Equal (C),
                              Size   => Say_It_Is (T) and Is_Greater (S),
                              State  => Is_Equal (Free))),

                Boxes.Absent ((Colour => Is_Equal (C),
                               Size   => Is_Less (T) and Is_Greater (S),
                               State  => Is_Equal (Free))));
    end Premiss;

    procedure Action (The_Pair : Fact.Collection) is
        The_Ball : Fact.Name renames The_Pair (1);
        The_Box  : Fact.Name renames The_Pair (2);
    begin

        Text_Io.Put_Line ("Ball            : " & Balls.Image (The_Ball));
        Text_Io.Put_Line ("Paired with box : " & Boxes.Image (The_Box));

        Balls.Change (The_Ball, Place, To_Value => In_Box);
        Boxes.Change (The_Box, State, To_Value => Busy);

    end Action;

end Pair_Ball_And_Boxes_Rule;