|
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 - download
Length: 7168 (0x1c00) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, procedure Test_Node, seg_047504
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
with Dynamic_Value, Dynamic_Node, Text_Io, Table_Of_Player_Commands, Dictionnary, Error; procedure Test_Node is V1, V2, V3 : Dynamic_Value.Object; Expression : Dynamic_Node.Object; N1, N2, N3, N4 : Dynamic_Node.Object; use Dynamic_Node; begin -- init de mot du voca Dictionnary.Set_Kind_Of_Storage (Dictionnary.Verb); Dictionnary.Insert ("aller"); Dictionnary.Set_Kind_Of_Storage (Dictionnary.Complement); Dictionnary.Insert ("vase"); Table_Of_Player_Commands.Initialize; Table_Of_Player_Commands.Set_Verb ("aller"); Table_Of_Player_Commands.Set_First_Complement ("a"); Table_Of_Player_Commands.Set_Second_Complement (""); Dynamic_Value.Set_Value (V1, "vase"); Dynamic_Value.Set_Value (V2, "aller", Dynamic_Value.Voca_Value); Dynamic_Value.Set_Value (V3, "", Dynamic_Value.Voca_Value); Dynamic_Node.Create_Value (N1); Dynamic_Node.Create_Value (N2); Dynamic_Node.Create_Value (N3); Dynamic_Node.Set_Value (N1, V1); Dynamic_Node.Set_Value (N2, V2); Dynamic_Node.Set_Value (N3, V3); Dynamic_Node.Evaluate (N1); Text_Io.Put (" Le noeud 1 vaut "); Text_Io.Put (Dynamic_Value.Get_Value (Dynamic_Node.Get_Value (N1))); Text_Io.New_Line; Dynamic_Node.Evaluate (N2); Text_Io.Put (" Le noeud 2 vaut "); Text_Io.Put (Dynamic_Value.Get_Value (Dynamic_Node.Get_Value (N2))); Text_Io.New_Line; Dynamic_Node.Evaluate (N3); Text_Io.Put (" Le noeud 3 vaut "); Text_Io.Put (Dynamic_Value.Get_Value (Dynamic_Node.Get_Value (N3))); Text_Io.New_Line; --Dynamic_Node.Create_Ternary_Operator (N4, Sentence); --Dynamic_Node.Create_binary_Operator (expression, multiply); if (Dictionnary.Is_Verb (Dynamic_Value.Get_Value (Dynamic_Node.Get_Value (N1)))) then Dynamic_Node.Create_Unary_Operator (N4, Verb); elsif (Dictionnary.Is_Complement (Dynamic_Value.Get_Value (Dynamic_Node.Get_Value (N1)))) then Dynamic_Node.Create_Unary_Operator (N4, Complement); else Text_Io.Put_Line ("ceci n'est pas definit"); end if; --Dynamic_Node.Create_Ternary_Operator (N3, Sentence); Dynamic_Node.Set_Argument (N4, N1); --Dynamic_Node.Set_Argument (N4, N1,left); --Dynamic_Node.Set_Argument (N4, N2, Right); --Dynamic_Node.Set_Argument (N4, N3, Center); Dynamic_Node.Evaluate (N4); Text_Io.Put ("verification = "); Text_Io.Put ((Dynamic_Value.Get_Value (Dynamic_Node.Get_Value (N4)))); Text_Io.New_Line; Text_Io.Put_Line ("le type est " & Kinds'Image (Dynamic_Node.Get_Kind (N4))); Text_Io.Put_Line ("le typed'operateur est " & (Dynamic_Node.Get_Operator (N4))); --Text_Io.Put (Boolean'Image (Dynamic_Value.Get_Value -- (Dynamic_Node.Get_Value (N4)))); --Text_Io.Put (" V2 * V3 vaut "); --Text_Io.Put (Integer'Image (Dynamic_Value.Get_Value -- (Dynamic_Node.Get_Value (N4)))); --Text_Io.New_Line; --Dynamic_Node.Set_Argument (Expression, N1, Left); --Dynamic_Node.Set_Argument (Expression, N4, Right); --Dynamic_Node.Evaluate (Expression); --Text_Io.Put (" l'expression vaut "); --Text_Io.Put (Integer'Image (Dynamic_Value.Get_Value -- (Dynamic_Node.Get_Value (Expression)))); --Text_Io.New_Line; --Text_Io.Put_Line (" essai de l'affichage automatique "); --Dynamic_Node.Print (Expression); exception when Error.Excep_Semantic_Error => Error.Treat; end Test_Node;
nblk1=6 nid=5 hdr6=a [0x00] rec0=20 rec1=00 rec2=01 rec3=026 [0x01] rec0=09 rec1=00 rec2=06 rec3=002 [0x02] rec0=1a rec1=00 rec2=04 rec3=03a [0x03] rec0=1b rec1=00 rec2=02 rec3=052 [0x04] rec0=13 rec1=00 rec2=03 rec3=000 [0x05] rec0=0d rec1=00 rec2=05 rec3=000 tail 0x2174ab3c8865392e8f0b0 0x42a00088462060003 Free Block Chain: 0x5: 0000 00 00 01 e7 80 09 2c 20 52 69 67 68 74 29 3b 09 ┆ , Right); ┆