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

⟦096c0da6b⟧ Ada Source

    Length: 3072 (0xc00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body System_Defined_Expression, seg_02ccb4, seg_02cf09, separate Generic_Expression

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 
└─⟦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_Expression is
    use System_Defined;

    function Make_Binary
                (Operator : Operators; Left, Right : Object) return Object is
        The_Code : Binary_Expression.Object;
    begin
        The_Code := Binary_Expression.Make (Operator, Left, Right);
        return New_Node (For_Code => (Sub_Class       => Binary,
                                      The_Binary_Code => The_Code));
    end Make_Binary;


    function Make_Unary
                (Operator : Operators; Operand : Object) return Object is
        The_Code : Unary_Expression.Object;
    begin
        The_Code := Unary_Expression.Make (Operator, Operand);
        return New_Node (For_Code => (Sub_Class      => Unary,
                                      The_Unary_Code => The_Code));
    end Make_Unary;


    function "+" (Left, Right : Object) return Object is
    begin
        return Make_Binary (Operators'('+'), Left, Right);
    end "+";

    function "-" (Left, Right : Object) return Object is
    begin
        return Make_Binary (Operators'('-'), Left, Right);
    end "-";


    function "*" (Left, Right : Object) return Object is
    begin
        return Make_Binary (Operators'('*'), Left, Right);

    end "*";


    function "/" (Left, Right : Object) return Object is
    begin
        return Make_Binary (Operators'('/'), Left, Right);
    end "/";


    function "abs" (Using_Value : Object) return Object is
    begin
        return Make_Unary (Operators'(Abs_Op), Using_Value);
    end "abs";
end System_Defined_Expression;

E3 Meta Data

    nblk1=2
    nid=0
    hdr6=4
        [0x00] rec0=1c rec1=00 rec2=01 rec3=05e
        [0x01] rec0=1b rec1=00 rec2=02 rec3=001
    tail 0x215253996840b50818020 0x42a00088462063c03