11.09.2013 Aufrufe

Konzepte h¨oherer Programmiersprachen (Entwurf) - WSI ...

Konzepte h¨oherer Programmiersprachen (Entwurf) - WSI ...

Konzepte h¨oherer Programmiersprachen (Entwurf) - WSI ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

10 1.3 Literaturhinweise<br />

te denken werden, dass sie durch einen Text ergänzt werden muss, der Beispiele aus<br />

verschiedenen <strong>Programmiersprachen</strong> vorführt.<br />

Gelernter und Jagannathan (1990) führen, nachdem sie kurz ihren Ansatz der Pro-<br />

”<br />

grammierlinguistik“ vorgestellt haben, ihre ideale Softwaremaschine“ (ISM) vor, ein<br />

”<br />

sehr abstraktes Berechnungsmodell. Die ISM besteht aus rekursiv verschachtelten<br />

” Raumabbildungen“ und Zeitabbildungen“ und es mag etwas schwierig sein, sich<br />

”<br />

an sie zu gewöhnen; aber sie erlaubt passende Definitionen der Begriffe Sichtbarbarkeit,<br />

Blockstruktur, parallele Programmstruktur, Verbunde, Objekte, Module, Bibliotheken<br />

usw. Nach den ersten 84 Seiten beginnt die Diskussion einzelner <strong>Programmiersprachen</strong>;<br />

dabei wird jede Programmiersprache auf die ISM bezogen. Die Diskussion<br />

der <strong>Programmiersprachen</strong> ist in historischer Reihenfolge organisiert, denn nur<br />

”<br />

indem wir den historischen Aufzeichnungen folgen, können wir die Gezeitenwellen<br />

zwischen klassischer Einfachheit und rokokohafter Extravaganz nachzeichnen, die das<br />

Feld häufiger überschwemmt haben“. Dieses Organisationsmuster erklärt auch die Kapitelüberschriften,<br />

die man anderenfalls nur schwer verstehen könnte, z. B. FORT-<br />

”<br />

RAN, ALGOL 60 und LISP“ oder APL und COBOL“. Die <strong>Programmiersprachen</strong>, die<br />

”<br />

in diesem Buch behandelt werden, sind Ada, ALGOL 60/68, APL, C, COBOL, CSP,<br />

FORTRAN, Linda, LISP, Miranda, Occam, Pascal, PL/I, Prolog, Scheme, SIMULA 67<br />

und Smalltalk; weitere Sprachen werden kurz angerissen.<br />

Ein drittes Buch, das in dieser Sammlung von Lehrbüchern etwas ungewöhnlich<br />

wirkt, ist Horowitz (1987). Was Horowitz hier getan hat, ist dass er dreißig meist wichtige<br />

Original-Artikel über <strong>Programmiersprachen</strong> ausgewählt und nachgedruckt hat,<br />

angereichert um eine Bibliographie von rund 200 Literaturstellen für tiefergehende<br />

Lektüre. Die Artikel sind in die folgenden Abschnitte eingeteilt: Geschichte und gute<br />

<strong>Entwurf</strong>stechnik, die ALGOL-Familie, applikative Sprachen, Datenabstraktion, Nebenläufigkeit,<br />

Alte Sprachen mit neuen Gesichtern, weitere Sprachen für die 1980er.<br />

Was hier unbedingt fehlt, ist ein Artikel über SIMULA im Abschnitt über Datenabstraktion.<br />

Nachdem wir diese drei Ausnahmen zur Regel vorgestellt haben, stellen wir<br />

die weiteren Bücher in chronologischer Reihenfolge vor.<br />

Die ältesten Bücher auf diesem Gebiet sind Sammet (1969), eine unschätzbare Quelle<br />

von Informationen hauptsächlich über ältere <strong>Programmiersprachen</strong>, und Wegner<br />

(1971). Sammet beschreibt auf 785 Seiten rund 120 <strong>Programmiersprachen</strong>, die ungefähr<br />

bis Herbst 1967 entstanden sind, mit einigen Zutaten von 1968. Die Diskussion ist relativ<br />

detailliert und verfügt über zahlreiche Beispiele; sie deckt praktisch alle relevanten<br />

Sprachen der damaligen Zeit ab. Außerdem gibt es allgemeine Einführungskapitel<br />

über <strong>Programmiersprachen</strong>. Von den diskutierten <strong>Programmiersprachen</strong> waren 20 bereits<br />

seinerzeit tot (Das Buch ist deshalb auch ein Beitrag zu einer Geschichte der <strong>Programmiersprachen</strong>)<br />

und nur 15 davon waren damals weithin implementiert und benutzt.<br />

Dass das Buch von Sammet tatsächlich am Anfang der Diskussion über <strong>Programmiersprachen</strong><br />

steht, kann man nicht zuletzt daran erkennen, wieviel Platz sie<br />

darauf verwendet, um die Vorteile von höheren <strong>Programmiersprachen</strong> gegenüber dem<br />

Assembler darzulegen.<br />

Der klassische Text von Wegner (1971) verfolgt eine ganz andere Zielrichtung: Anstatt<br />

jede (möglicherweise) interessante Sprache zu diskutieren, stellt er zunächst einen<br />

koeinf.pdf

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!