DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

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

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦6031de9d3⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body System_Defined, seg_04a312, seg_04a9de, seg_04b44b, separate Generic_Expression

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



separate (Generic_Expression)
package body System_Defined is

    function Evaluate (Using_Operator : Operators; Right : Slot.Object)
                      return Slot.Object is
        use Slot.Operators;
        I : Integer;
    begin
        case Using_Operator is
            when '+' | '*' | '/' | '&' =>
                raise Illegal_Operation;
            when Abs_Op =>
                return abs Right;
            when '-' =>
                return (-Right);
        end case;
    end Evaluate;



    function Evaluate (Using_Operator : Operators; Left, Right : Slot.Object)
                      return Slot.Object is
        use Slot.Operators;
        I : Integer;
    begin
        case Using_Operator is
            when '+' =>
                return Left + Right;
            when '-' =>
                return Left - Right;
            when '*' =>
                return Left * Right;
            when '/' =>
                return Left / Right;
            when '&' =>
                return Left & Right;
            when Abs_Op =>
                return (abs Left);
        end case;
    end Evaluate;


    function Image (Op : Operators) return String is
    begin
        case Op is
            when '+' =>
                return "+";  
            when '-' =>
                return "-";  
            when '*' =>
                return "*";  
            when '/' =>
                return "/";
            when '&' =>
                return "&";
            when Abs_Op =>
                return "Abs";
        end case;
    end Image;
end System_Defined;

E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=23 rec1=00 rec2=01 rec3=02a
        [0x01] rec0=1b rec1=00 rec2=02 rec3=001
    tail 0x2174ea12e866e7c31ea7c 0x42a00088462063c03