Information Technology Reference
In-Depth Information
Abb. 2.11 Die formale Beschreibung von Prozedur-Aufrufen in der Backus-Naur-Form
werden konnten. Der Standard-Parameterübergabemecha-
nismus war in Anlehnung an den Lambda-Kalkül „call-
by-name“. Daneben konnte man durch das Sondersymbol
„value“ auch einen Übergabemechanismus gemäß „call-by-
value“ bewirken, um Mehrfachauswertungen von Parametern
zu vermeiden.
Die Zulassung von direkten und indirekten Rekursionen
erforderte besondere Techniken zur Verwaltung der Daten wäh-
rend der Laufzeit des Programms, insbesondere zur Verwaltung
von freien Variablen. Dieses Problem wurde erstmals durch den
Einsatz der von Edsger Wybe Dijkstra ( Abb. 2.12 ) entwickelten
Display-Technik mittels eines Laufzeitkellers realisiert. Edgar
W. Dijkstra, geboren am 11. Mai 1930 in Rotterdam, war Sohn
eines Chemikers und einer Mathematikerin. Nach dem Besuch
des Gymnasiums Erasmianum in Rotterdam studierte er ab
1948 Mathematik und theoretische Physik an der Universität
Leiden. Betreut wurde er von Adriaan van Wijngaarden.
Dijkstra wird oft als erster Programmierer der Niederlande
bezeichnet und schrieb 1959 an der Universität von Amster-
dam seine Doktorarbeit über die vom Mathematisch Centrum
entwickelte Electrologica X1 , deren grundlegende Software
er schrieb.
Seine populärste Abhandlung ist Go To Statement Consi-
dered Harmful über den Goto-Befehl und warum er nicht be-
nutzt werden sollte. Er führte den Begriff der „strukturierten
Programmierung“ in die Informatik ein, und popularisierte
in seiner Turing-Lecture The Humble Programmer auch den
Begriff der Softwarekrise.
ALGOL war der Ausgangspunkt für fast alle weiteren Ent-
wicklungen im Bereich der Programmiersprachen. In vielen
Details war die Sprache ihrer Zeit weit voraus. Die Tatsache,
dass sie sich nicht gegen FORTRAN durchsetzen konnte, lag
ausschließlich darin, dass sie von der Firma IBM, die damals
den Computermarkt dominierte, nicht nachhaltig unterstützt
wurde. Die Relevanz von ALGOL für die Entwicklung der
höheren Programmiersprachen zeigt sich auch darin, dass
acht der Väter von ALGOL mit einem Turing-Award ausge-
zeichnet wurden:
P. Naur, A.J. Perlis, J. McCarthy, E.W. Dijkstra, J. Backus,
R.W. Floyd, C.A.R. Hoare und N. Wirth.
Abb. 2.12 E. W. Dijkstra
LISP
Als der Vater von LISP gilt John McCarthy ( Abb. 2.13 ).
Einige Grundideen von LISP stammen aus der Sprache
IPL ( I nformation P rocessing L anguage), die auf A. Newell
und H. A. Simon zurückgeht und bereits im Sommer 1956
soweit entwickelt war, dass sie von den Autoren auf Kon-
ferenzen und Tagungen präsentiert werden konnte. Wegen
ihres maschinennahen Niveaus geriet sie jedoch mit dem
Aufkommen der höheren Programmiersprachen schnell in
Verges senheit.
Abb. 2.13 John McCarthy
Die erste vollständige, aber noch vorläuige, Beschreibung
von LISP ( LIS T P rocessing Language), verfasste P. A. Fox
1960 im „LISP-1 Programmers Manual“. Die endgültige Be-
schreibung, die für lange Zeit Quasi-Standard war, war das
im Jahre 1962 fertiggestellte LISP-1.5 Programmers Manual.
Während die Beschreibung der Syntax von LISP auf kon-
ventionelle Weise durch Angabe einer Grammatik erfolgte,
beschritt McCarthy bei der Beschreibung der Semantik ei-
nen neuen Weg, indem er sie durch Angabe eines Interpre-
tierers maschinenunabhängig festlegte. Da der Interpretierer
 
 
 
 
Search WWH ::




Custom Search