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

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

12 1.3 Literaturhinweise<br />

gen, einen neueren Zeitschriftenartikel (Ludewig 1993).<br />

Tucker jr. (1986), die zweite Ausgabe eines Buchs von 1977, beschäftigt sich auch<br />

mehr mit der Diskussion einzelner Sprachen (Ada, APL, C, COBOL, FORTRAN, LISP,<br />

Modula-2, Pascal, PL/I, Prolog, Snobol) in ziemlichem Detail, aber ohne <strong>Konzepte</strong> sehr<br />

stark hervorzuheben. Er sagt jedoch: ” Ein wesentlicher Zweck dieses Textes ist es, effektive<br />

Kriterien für die Bewertung und den Vergleich von <strong>Programmiersprachen</strong> zu<br />

beschreiben und anzuwenden.“ Eingestreut in die Diskussion von <strong>Programmiersprachen</strong><br />

gibt es drei Abschnitte über Sprachentwurf (Syntax, Semantik, Pragmatik). Diese<br />

Abschnitte präsentieren allerdings nur einige wenige Grundlagen und Beispiele; insbesondere<br />

geben sie keine Hinweise für den <strong>Entwurf</strong>sprozess.<br />

Auch von 1986 ist die ” <strong>Programmiersprachen</strong>landschaft“ von Marcotty und Ledgard<br />

(1986). Nach einem Einführungskapitel wird zunächst an einer einfachen imperativen<br />

Modellsprache core das Problemfeld aufgerissen. Die nächsten drei Kapitel<br />

beschäftigen sich allgemein mit Methoden der Definition von Syntax und Semantik<br />

von <strong>Programmiersprachen</strong> und, konsequenterweise, mit dem Übersetzungsprozess,<br />

und ziehen dazu die Modellsprache core als Illustration heran. Mit Kapitel 6 beginnt<br />

dann eine eingehendere Diskussion bestimmter Aspekte von <strong>Programmiersprachen</strong>,<br />

wobei jeweils zu Anfang eine weitere Modellsprache zur Illustration der <strong>Konzepte</strong><br />

eingeführt wird und am Ende in einem Abschnitt ” Where to look“ mindestens zwei<br />

Sprachen aufgeführt werden, in denen man die <strong>Konzepte</strong> dieses Kapitels besonders<br />

gut studieren kann. In der Liste der <strong>Konzepte</strong> (Namen, Speicherplätze und Werte;<br />

Steuerstrukturen; Datentypen; Ein/Ausgabe; Prozeduren und Parameter; geschachtelte<br />

Sichtbarkeitsbereiche; Definition eigener Datentypen; dynamisch veränderbare<br />

Strukturen; eine applikative Sprache; Ausnahmebehandlung; Parallelverarbeitung; getrennt<br />

übersetzte Module) fällt das Fehlen des Begriffs ” Objektorientierung“ auf, obwohl<br />

Smalltalk gelegentlich als Beispiel herangezogen wird.<br />

MacLennan (1999) (dritte Auflage eines Buchs von 1983; ich kenne aber nur die<br />

zweite aus dem Jahr 1987) enthebt sich der bereits angesprochenen Schwierigkeit bei<br />

der Anlage von Büchern über <strong>Konzepte</strong> von <strong>Programmiersprachen</strong> dadurch, dass<br />

das Buch im wesentlichen chronologisch angeordnet ist (erste höhere <strong>Programmiersprachen</strong>,<br />

FORTRAN, ALGOL, Pascal, Ada als Abfolge imperativer <strong>Programmiersprachen</strong>;<br />

sodann LISP, Smalltalk, Prolog als Vertreter alternativer Ansätze), aber in einem<br />

zusätzlichen ” Concept Directory“ eine andere Struktur des gleichen Buchs nach Sachgebieten<br />

erschließt. Im Umschlagdeckel ist eine Liste von 16 ” Prinzipien“ zusammengefasst,<br />

die durch das Buch hinweg vorgestellt und in einem eigenen Kapitel über Prinzipien<br />

des Sprachentwurfs diskutiert werden.<br />

Wilson und Clark (1988) bietet nicht viel mehr als der Titel ( ” Comparative Programming<br />

Languages“) verspricht. In der Tat ist der Vergleich relativ phänomenologisch.<br />

Das Buch enthält viele einleuchtende kleine Beispiel zum Vergleich von <strong>Programmiersprachen</strong>,<br />

so dass man sehen kann, wie bestimmte Konstrukte in verschiedenen Kulturen<br />

dargestellt werden, aber es bietet praktisch gar keinen theoretischen Hintergrund.<br />

So wird beispielshalber ein Programm für die symbolische Differentiation in LISP, LO-<br />

GO und Prolog vorgeführt, aber das klassische LISP-Buch von Allen (1978) wird nicht<br />

einmal unter den Literaturhinweisen des entsprechenden Kapitels aufgeführt. Ebenso<br />

koeinf.pdf

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!