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

⟦8781237cc⟧ TextFile

    Length: 1172 (0x494)
    Types: TextFile
    Names: »B«

Derivation

└─⟦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⟧ 

TextFile

with Control;
with Text_Io;
procedure Test_Constrained_Control is  
    The_Line   : String (1 .. 80);
    The_Length : Natural;
    package Level is new Control (Minimum => 0, Maximum => 15, Default => 0);
    The_Value : Level.Object;
begin
    Level.Set (The_Value, To_Mode => Level.Constrained);
    Done:
        loop
            Text_Io.Get_Line (The_Line, The_Length);  
            for I in 1 .. The_Length loop
                begin
                    case The_Line (I) is
                        when '+' =>
                            Level.Up (The_Value);
                        when '-' =>
                            Level.Down (The_Value);
                        when '?' =>
                            Level.Put (The_Value);
                        when 'q' =>
                            exit Done;
                        when others =>
                            null;
                    end case;
                exception
                    when Level.Overflow | Level.Underflow =>
                        Text_Io.Put_Line ("there is a bug !!!");
                end;
            end loop;
        end loop Done;
end Test_Constrained_Control;