Ada95

You don't know what real time-critical software is until you're responsible for the paychecks of a battalion of heavily armed Marines. (Jemand in asr)

Ada ist eine objektorientierte, sicherheitsorientierte ProgrammierSprache, die 1983 zum ersten mal standardisiert wurde. Die aktuelle Version des Standards ist das Ada Reference Manual 1995. Damit ist Ada lustigerweise die erste objektorientierte Sprache der Welt, die international standardisiert wurde.

Die Arbeit an einem neuen Standard (Ada0Y) ist in vollem Gange.

Der Name

Ada (sic! - nicht ADA) ist der Vorname von AdaByronKing, Countess of Lovelace, einer unheimlich faszinierenden Frau. Sie war die Gefährtin von CharlesBabbage, dem Erfinder der DifferenzMaschine. Sie hat die erste ProgrammierSprache der Welt erfunden und viele der heutigen Einsatzmöglichkeiten von Computern vorhergesehen.

Die Philosphie der Sprache:

Deshalb:

Das Ada Reference Manual 95

Dies ist der einzuhaltende Standard.

Er wird durch optionale Erweiterungen, die sich special needs annex nennen, ergänzt. Diese Anhänge kümmern sich um Sachen wie MultiTasking (eine bequehme Abstraktion von InterProzessKommunikation oder MultiThreading), HardwarenaheProgrammierung, VerteiltesRechnen in Netzwerken, RealTimeSysteme, NumberCrunching, etc.

Ein Compiler darf sich erst Adacompiler nennen, wenn er eine umfangreiche und ständig wachsende Testsuite bestanden hat. Ein Compiler kann auf die annexes verzichten, muss sie aber entweder vollständig und korrekt oder eben gar nicht mitliefern. Halbe Sachen wie bei C++ gibt es nicht: http://www.adaic.com/compilers/index.html

hauptsächliche Einsatzgebiete

EmbeddedSystems, RealTimeSysteme, aber auch Informationssysteme in kritischen Bereichen:

freie Werkzeuge zum Lesen und Testen

Wer sich das Codelesen vereinfachen will und nicht selber daraufkommt: Zumindest vim, (X)EMACS, Nedit und Kwrite (Kate) haben Adamodi, die wenigstens Syntaxhighlighting beherrschen. Bei vim gibt es auch schon ein nettes plugin für's indenting.

Wer diverse Hypothesen über das Funktionieren der Software austesten will, sollte GNAT 3.14p (oder gnat3.15p) installieren. GNAT liegt mittlerweile eigentlich allen ernstzunehmenden Distribution bei. Zum Paket gehören meist neben dem eigentlichen Compiler (und der standardisierten Lib) auch ein paar nette Werkzeuge:

Last but not least:

Resourcen

Stolperfallen

Fragen und Antworten


Wer wacht eigentlich darüber bzw. welches Gesetz verbieter mir, irgendetwas als AdaCompiler zu bezeichnen?

(Im Endeffekt ist das vermutlich eine warenzeichenrechtliche Sache. Tatsächlich darf auch kein selbsternannter C++-Compiler behaupten, er implementiere den Iso-Standard, wenn er es nicht wirklich tut. Derzeit gibt es nur anscheinen keinen einzigen derartigen Compiler, und was die existierenden vorgeben zu implementieren... nun ja. Die durchaus angebrachten Beschimpfungen sollten hier in Richtung Compilerbauer gehen, nicht in Richtung Standardkommitee.)

Exakt. Ada ist ein Trademark (IIRC im Besitz des US DoD, eventuell auch schon auf die ARA übergegangen).

Ada95 ist ISO-Standard:

Ausserdem ist die Konformität ein wichtiger Bestandteil des Marketings bei Adacompilern. Vorgetäuschte ISO-Konformität wäre damit eine Täuschung des Käufers und in vielen Ländern illegal.

Die Testsuite wird heute von der ARA (Ada Resource Association) unter Oberherrschaft der ISO gepflegt. Das eigentliche Testen übernehmen Labs im Auftrag von ARA und Compiler Vendors. Früher war das US-Verteidigungsministerium dafür zuständig.

Näheres zu den Konformitätstests: http://www.adaic.com/compilers/acaa.html


CategoryLanguage

GAOSWiki: AdaLanguage (last edited 2008-05-22 18:49:23 by localhost)

Ersteller von Seiten stellen Inhalt unter der GeneralPublicLicense zur Verfügung Alle Seiten unter http://gaos.org, (c)2001-2038 GAOS e.V., Impressum