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

⟦745605d75⟧ TextFile

    Length: 13140 (0x3354)
    Types: TextFile
    Names: »B«

Derivation

└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 

TextFile

with Bounded_String;
with Object;
with Class_Integer;
with Class_Turtle;
with Easy_X;
with Graphiques;
with Text_Io;

procedure Essai_Turtle is
    A_Turtle, A_Reference, Resultat : Object.Reference;
    An_Unary : Object.Unary;
    A_Binary : Object.Binary;
    A_Keyword : Object.Keyword;
    An_Integer : Object.Reference;
    Chaine : Bounded_String.Variable_String (80);
begin  
    Graphiques.Open;

    loop
        case Easy_X.Next_Event is
            when Easy_X.Update =>
                A_Turtle := Class_Turtle.Create;

                -- Unary :

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "Rentre_Chez_Toi");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "Ton_X");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "Ton_Y");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "Leve_Ta_Plume");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "Baisse_Ta_Plume");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "Ton_Angle");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "Ton_Epaisseur");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "Duplique");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, Resultat);


                -- Binary :

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, A_Binary);
                Resultat := Class_Turtle.Send (A_Binary, Resultat);


                -- Keyword :

                An_Integer := Class_Integer.Create;

                Text_Io.Put ("Va_En_X :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Y");
                Object.Put (Chaine, A_Keyword);
                Bounded_String.Copy (Chaine, "Va_En_X");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (10), A_Keyword);
                Object.Put (Class_Integer.Create (17), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Ton_X :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Ton_X");
                Object.Put (Chaine, An_Unary);
                A_Reference := Class_Turtle.Send (An_Unary, A_Turtle);
                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Integer.Send (An_Unary, A_Reference);


                Text_Io.Put ("Ton_Y :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Ton_Y");
                Object.Put (Chaine, An_Unary);
                A_Reference := Class_Turtle.Send (An_Unary, A_Turtle);
                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Integer.Send (An_Unary, A_Reference);


                Text_Io.Put ("Leve_Ta_Plume :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Leve_Ta_Plume");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Baisse_Ta_Plume :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Baisse_Ta_Plume");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Ton_Angle :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Ton_Angle");
                Object.Put (Chaine, An_Unary);
                A_Reference := Class_Turtle.Send (An_Unary, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Integer.Send (An_Unary, A_Reference);


                Text_Io.Put ("Rentre_Chez_Toi :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Rentre_Chez_Toi");
                Object.Put (Chaine, An_Unary);
                A_Turtle := Class_Turtle.Send (An_Unary, A_Turtle);
                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Va_En_X :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Va_En_X");
                Object.Put (Chaine, A_Keyword);
                Bounded_String.Copy (Chaine, "Y");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (10), A_Keyword);
                Object.Put (Class_Integer.Create (17), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Va_En_X :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Va_En_X");
                Object.Put (Chaine, A_Keyword);
                Bounded_String.Copy (Chaine, "Y");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (79), A_Keyword);
                Object.Put (Class_Integer.Create (53), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Avance :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Avance");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (23), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);


                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Recule :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Recule");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (23), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Epaisseur :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Epaisseur");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (1), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("Angle :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "Angle");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (23), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("A_Droite :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "A_Droite");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (23), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);


                Text_Io.Put ("A_Gauche :");
                Text_Io.New_Line;
                Bounded_String.Copy (Chaine, "A_Gauche");
                Object.Put (Chaine, A_Keyword);
                Object.Put (Class_Integer.Create (23), A_Keyword);
                A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                Bounded_String.Copy (Chaine, "En_Texte");
                Object.Put (Chaine, An_Unary);
                Resultat := Class_Turtle.Send (An_Unary, A_Turtle);

                for J in 1 .. 3 loop

                    Bounded_String.Copy (Chaine, "Epaisseur");
                    Object.Put (Chaine, A_Keyword);
                    Object.Put (Class_Integer.Create (1), A_Keyword);
                    A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                    Bounded_String.Copy (Chaine, "Angle");
                    Object.Put (Chaine, A_Keyword);
                    Object.Put (Class_Integer.Create (0), A_Keyword);
                    A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                    Bounded_String.Copy (Chaine, "Leve_Ta_Plume");
                    Object.Put (Chaine, An_Unary);
                    A_Turtle := Class_Turtle.Send (An_Unary, A_Turtle);

                    for I in 10 .. 50 loop

                        Bounded_String.Copy (Chaine, "Epaisseur");
                        Object.Put (Chaine, A_Keyword);
                        Object.Put (Class_Integer.Create
                                       (Object.Index (I / 10)), A_Keyword);
                        A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                        Bounded_String.Copy (Chaine, "Leve_Ta_Plume");
                        Object.Put (Chaine, An_Unary);
                        A_Turtle := Class_Turtle.Send (An_Unary, A_Turtle);

                        Bounded_String.Copy (Chaine, "Va_En_X");
                        Object.Put (Chaine, A_Keyword);
                        Bounded_String.Copy (Chaine, "Y");
                        Object.Put (Chaine, A_Keyword);
                        Object.Put (Class_Integer.Create
                                       (Object.Index (J * 100)), A_Keyword);
                        Object.Put (Class_Integer.Create
                                       (Object.Index (J * 100)), A_Keyword);
                        A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                        Bounded_String.Copy (Chaine, "Baisse_Ta_Plume");
                        Object.Put (Chaine, An_Unary);
                        A_Turtle := Class_Turtle.Send (An_Unary, A_Turtle);

                        Bounded_String.Copy (Chaine, "A_Gauche");
                        Object.Put (Chaine, A_Keyword);
                        Object.Put (Class_Integer.Create (10), A_Keyword);
                        A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                        Bounded_String.Copy (Chaine, "Avance");
                        Object.Put (Chaine, A_Keyword);
                        Object.Put (Class_Integer.Create (100), A_Keyword);
                        A_Turtle := Class_Turtle.Send (A_Keyword, A_Turtle);

                    end loop;
                end loop;

            when Easy_X.Button_Down =>
                exit;
            when Easy_X.Button_Up =>
                null;
        end case;
    end loop;
    delay 7.0;

    Graphiques.Close;
exception
    when others =>
        Graphiques.Close;
end Essai_Turtle;