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.

16 1.3 Literaturhinweise<br />

Völlig abzuraten ist von Stansifer (1995); mag das englische Original auch durchaus<br />

seine Qualitäten haben, so ist die deutsche Übersetzung doch von einer derartigen<br />

Unkenntnis geprägt, dass die Lektüre ein fast sicherer Weg in den Wahnsinn ist.<br />

Pratt und Zelkowitz (1998) ist die dritte Auflage eines Buchs von 1975, ursprünglich<br />

von Pratt alleine geschrieben. Dieses Buch zerfällt in zwei Teile, wovon sich der erste<br />

mit <strong>Konzepte</strong>n beschäftigt und der zweite mit <strong>Programmiersprachen</strong>. Das Buch<br />

beginnt mit einem Motivationskapitel, diskutiert dann <strong>Entwurf</strong>sfragen (vielleicht etwas<br />

früh?) und Prozesse der Sprachübersetzung und wendet sich dann den <strong>Konzepte</strong>n<br />

zu. Unter den <strong>Konzepte</strong>n sind Datentypen, Kapselung, Ablaufsteuerung, Unterprogrammsteuerung<br />

und Vererbung. Der <strong>Konzepte</strong>-Teil schliesst mit einem Kapitel<br />

über Fortschritte im Sprachentwurf. Sprachen, die in dem zweiten Teil diskutiert werden,<br />

sind FORTRAN, C, Pascal, Ada, C ++ , Smalltalk, LISP, ML und Prolog. (Frühere<br />

Auflagen diskutierten auch andere Sprachen.) Die Kapitel über die Sprachen haben<br />

alle die gleiche Struktur, wobei die Abschnitte wie folgt sind: Geschichte, ” Hello<br />

World“-Beispiel, Sprachübersicht, Datenobjekte, Ablaufsteuerung, Unterprogramme<br />

und Speichermanagement, Abstraktion und Kapselung und Sprachbewertung. Auch<br />

weiterführende Literatur wird am Ende der Kapitel angegeben.<br />

Ghezzi und Jazayeri (1998) ist die dritte Ausgabe eines Buchs von 1982, die leider<br />

gegenüber der zweiten Auflage (Ghezzi und Jazayeri 1987) deutlich abfällt. Zwar hat<br />

das Buch einen sehr schönen Einband mit einer Abbildung des Steins von Rosette, im<br />

Inneren ist die Typographie jedoch ausgesprochen abschreckend und leserfeindlich.<br />

Die Seiten sind in einer viel zu großen Schrift viel zu stark gefüllt, so dass das Lesen<br />

sehr ermüdet und persönliche Randbemerkungen vollends unmöglich werden.<br />

Soweit ich in dieser Vorlesung Gebrauch von Ghezzi und Jazayeri mache, beziehe<br />

ich mich eindeutig auf die zweite Ausgabe. Während es im Vorwort dieser Ausgabe<br />

noch hieß: Unser Ziel ist es, <strong>Programmiersprachen</strong>konzepte zu bewerten in bezug<br />

”<br />

auf ihren Beitrag zum Softwareentwicklungsprozess und die Kriterien zu entwickeln,<br />

die man für solch eine Bewertung braucht“ und die Absicht bei der Präsentation von<br />

Programmiersprach-<strong>Konzepte</strong>n war, die Sprache hervorzuheben, in der das Konzept<br />

”<br />

erstmalig vorkam“, so ist die dritte Auflage leider sehr stark auf C/C++ wegen ihrer<br />

”<br />

breiten Verfügbarkeit“ ausgerichtet. Das geht so weit, dass es sogar einen Abschnitt<br />

” Funktionale Programmierung mit C++“ gibt, was man schon fast als abartig bezeichnen<br />

muss. Nach einer Einleitung mit historischen Bemerkungen folgen Kapitel über<br />

Syntax und Semantik von <strong>Programmiersprachen</strong> sowie über die Strukturierung von<br />

Daten, von Berechnungen und von Programmen. Diese ersten fünf Kapitel bezeichnen<br />

die Autoren als wesentlich“. Die restlichen Kapitel behandeln objektorientierte Spra-<br />

”<br />

chen, funktionale Programmierung, Logik-Programmierung und Sprachen im Kon-<br />

”<br />

text“. Um die Implementierungskosten für <strong>Konzepte</strong> zu studieren, stellen sie im zweiten<br />

Kapitel eine sehr einfache, abstrakte Maschine Simplesem vor, die dazu benutzt<br />

wird, die Laufzeitstrukturen für verschiedene Klassen von Sprachen zu erklären. Die<br />

zweite Ausgabe enthält übrigens im Gegensatz zur dritten einen Anhang mit Zusammenfassungen<br />

über 21 <strong>Programmiersprachen</strong> auf jeweils einer Seite. Von der deutschen<br />

Übersetzung (Ghezzi und Jazayeri 1989) der zweiten Ausgabe ist abzuraten, da<br />

deren Qualität beklagenswert ist.<br />

Ein neueres Buch ist Mitchell (2003), das gleichzeitig auch eins der besten ist. Von<br />

koeinf.pdf

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!