|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 1556 (0x614)
Types: TextFile
Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
with Lex;
with Shownet_File;
with Intermediate_Code, Spectacle_Definition;
with Error, Symbol, Binary_Tree, Scene;
procedure Compil_And_Play
(Source_File : String := "source_code";
Object_File : String := "object_code";
Error_File : String := Text_Io.Name (Text_Io.Standard_Output)) is
Ok : Boolean := True;
Time : Natural := 0;
The_Scene : Scene.P_Scene;
begin
Text_Io.Put_Line
("************** DEBUT DU PROGRAMME (Initialisation en cours) ...");
Text_Io.Put_Line ("");
Error.Initialize;
Symbol.Initialize;
Text_Io.Put_Line ("************** ANALYSE SYNTAXIQUE EN COURS ...");
Text_Io.Put_Line ("");
Lex.Open (Source_File);
Lex.Next;
Shownet_File.Parse (Ok);
Lex.Close;
if Error.Exist then
Error.Display_In_Source (Source_File, Error_File);
end if;
Text_Io.Put_Line
("************** GENERATION DU CODE INTERMEDIAIRE EN COURS ...");
Text_Io.Put_Line ("");
Intermediate_Code.Open (Object_File, Text_Io.Out_File);
Spectacle_Definition.Generate (Symbol.Get_Start_Point ("main"), Time);
Intermediate_Code.Close;
Text_Io.Put_Line ("************** LE SPECTACLE COMMENCE !! ...");
Text_Io.Put_Line ("");
Intermediate_Code.Open (Object_File, Text_Io.In_File);
Scene.Lire_Scene (The_Scene);
Intermediate_Code.Close;
Scene.Jouer_Scene (The_Scene);
Text_Io.Put_Line ("************** FIN DU PROGRAMME ...");
Text_Io.Put_Line ("************** MERCI DE VOTRE ATTENTION ...");
end Compil_And_Play;