Skåne Sjælland Linux User Group - http://www.sslug.dk Forside   Tilmelding   Postarkiv   Oversigt   Kalender   Søg
 

Ada for Open Source-folk

Af Jacob Sparre Andersen. Holdt ved hyggemødet i Symbion tirsdag den 11. april 2000.

Ideen med Ada

Ada er designet som et generelt programmeringssprog, dog med særlig vægt på

indlejrede programmer
styresystemer, proceskontrol, Patriot II-sprænghoveder, ...
holdbarhed og genbrugelighed
målet er at det skal være lige så enkelt at videreudvikle et program 30 år efter det blev skrevet som dagen efter
pålidelighed
det er ret upopulært at fly falder ned på grund af en General Protection Fault
overskuelighed
det skal være overkommeligt at skrive og opdatere programmer på flere millioner linier kode.

Ada er ligesom C og C++ en ISO-standard. I modsætning til C og C++ har man en formaliseret proces til at vurdere om en Ada-oversætter svarer til standarden (denne proces er ikke perfekt).

Om overskueligheden vil jeg gerne citere redaktøren for C-standarden:

"Over 50,000 lines of code, you probably should be programming in Ada."
- P. J. Plaugher

Kodeeksempler

Sig hej til SSLUG

Her er "standardprogrammet" til at introducere et programmeringssprog:

with Ada.Text_IO; use Ada.Text_IO;

procedure Hej_SSLUG is
begin
   Put_Line ("Hej SSLUG");
end Hej_SSLUG;

With bliver brugt til at markere at en pakke eller routine skal bruges af den efterfølgende procedure. Use bliver brugt som en slags alias-funktion, så man ikke behøver at bruge det fulde navn på de typer og routiner der er defineret i Ada.Text_IO.

Sig hej til SSLUG og resten af verden på samme tid

Ada har parallel processering indbygget i sproget, så jeg har lige udvidet det ovenstående program med en task, der kører parallelt med hovedproceduren. Hej_SSLUG_Og_Verden skriver Hej Verden og Hej SSLUG "samtidig".

with Ada.Text_IO; use Ada.Text_IO;

procedure Hej_SSLUG_Og_Verden is

   task Hils_På_Verden;

   task body Hils_På_Verden is
   begin
      Put_Line ("Hej Verden");
   end;

begin
   Put_Line ("Hej SSLUG");
end Hej_SSLUG_Og_Verden;

Henvisninger

Opslagsværker:

Kurser:

Værktøjer:

Kode:

Spørgsmål?

Hvis du har nogle spørgsmål er du meget velkommen til at skrive til mig.

 
Forside   Tilmelding   Postarkiv   Oversigt   Kalender   Søg

 
 
Henvendelse vedrørende websiderne til <www_admin>. Senest ændret Sunday, 25-Oct-2009 15:25:35 CET .
 

Denne side vedligeholdes af Jacob Sparre Andersen (<sparre@sslug.dk>)