Information Technology Reference
In-Depth Information
Abb. 2.8
M. Paul
Abb. 2.9
Peter Naur
Auf Vorschlag der GAMM kamen beide Institutionen
überein, gemeinsame Treffen zu veranstalten, um eine ge-
meinsame Sprache zu entwickeln. Das wichtigste Treffen
fand vom 27. Mai bis zum 1. Juni 1958 in Zürich statt. An
ihm nahmen vonseiten der GAMM
F.L. Bauer, H. Botten-
bruch, H. Rutishauser
und
K. Samelson
und vonseiten der
ACM
J. Backus, C. Katz, J. Perlis
und
J.H. Wegstein
teil. Das
Ergebnis war die Veröffentlichung des
Preliminary Report:
International Algebraic Language.
Der Name der Sprache,
zunächst als
IAL
abgekürzt, wurde später in
ALGOL 58
(
AL-
GO
rithmic
L
anguage) umbenannt.
Der Sprachentwurf von ALGOL 58 hatte noch eine Reihe
von Schwachstellen. So gab es z. B. Doppeldeutigkeiten. Da
sowohl eine IF-THEN-Anweisung als auch eine IF-THEN-
ELSE-Anweisung vorgesehen war, war bei geschachtelter
Verwendung dieser Anweisungen nicht klar, welcher Teil-
ausdruck zu welcher Anweisung gehörte. Daher wurde der
Sprachentwurf weiterentwickelt.
Auf einem der nächsten Treffen im Januar 1960 in Paris,
an dem Bauer, Naur, Rutishauser, Samelson, Vauquois, van
Wijngaarden, Woodger, Backus, Green, Katz, McCarty, Perlis
und Wegstein teilnahmen, wurden alle noch offenen Fragen
einvernehmlich gelöst und als Ergebnis der
ALGOL-60-Report
vorgestellt, der im Wesentlichen von
Peter Naur
verfasst wurde.
Peter Naur (
Abb. 2.9
) wurde am 25. Oktober 1928 in Fre-
deriksberg bei Kopenhagen geboren. Er studierte in Kopen-
hagen. Nach verschiedenen Forschungsaufenthalten in den
USA und in England war er zunächst Berater bei der Firma
Regnecentralen (RC) und wurde später Professor an der Uni-
versität Kopenhagen.
Die Anregung, das formale Beschreibungsverfahren für
die Syntax von Programmiersprachen mit Backus-Naur-Form
zu benennen, geht auf
Donald Knuth
zurück. Naur selbst hat
stets betont, dass er die Bezeichnung Backus-Normal-Form
für richtiger hält.
Die Entwicklung von ALGOL war ein Meilenstein in der
Entwicklung höherer Programmiersprachen. Die bahnbre-
chenden Neuerungen waren
• die Entwicklung von formalen Beschreibungsverfahren
für die Syntax einer Sprache
• die Entwicklung von Konzepten zur „strukturierten“
Programmierung
• die Entwicklung von neuen Unterprogrammtechniken
und Parameterübergaben
• Einführung von Rekursionen
• Einführung des Blockkonzeptes
• die Entwicklung neuer Compiler-Techniken.
Die formalen Beschreibungsverfahren wurden von
J.W.
Backus
entwickelt. Auf der
UNESCO International Confe-
rence on Information Processing
, die vom 15.-20. Juni 1959
in Paris stattfand, präsentierte er
The syntax and semantics
of the proposed international algebraic language of the Zu-
rich ACM/GAMM Conference
, mit der er die Syntax von
IAI beschrieb. Naur benutzte eine modiizierte Variante zur
Beschreibung der Syntax von ALGOL 60. Dieses Beschrei-
bungsverfahren wurde zunächst als Backus-Normal-Form
BNF
, bekannt (
Abb. 2.11
).
ALGOL hatte zwei verschiedene Arten von Unterprogram-
men, Prozeduren und Funktionen, die auch rekursiv benutzt
Abb. 2.10
Die formale Beschreibung von arithmetischen Ausdrücken in der ursprünglichen Backus-Form