Konzepte h¨oherer Programmiersprachen (Entwurf) - WSI ...
Konzepte h¨oherer Programmiersprachen (Entwurf) - WSI ...
Konzepte h¨oherer Programmiersprachen (Entwurf) - WSI ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
ii INHALTSVERZEICHNIS<br />
7 Typen und Typsysteme 121<br />
7.1 Typen als Strukturbeschreibungen . . . . . . . . . . . . . . . . . . . . . . 123<br />
7.2 Typsprachen und Deskriptoren . . . . . . . . . . . . . . . . . . . . . . . . 130<br />
7.3 Taxonomie von Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . 132<br />
7.4 Einzelne Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134<br />
7.5 Overloading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168<br />
7.6 Polymorphie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169<br />
7.7 Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170<br />
8 Modulkonzept 171<br />
8.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171<br />
8.2 Geheimnisprinzip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171<br />
8.3 Steuerung der Sichtbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . 172<br />
8.4 Auflösung von Namenskonflikten . . . . . . . . . . . . . . . . . . . . . . 173<br />
8.5 Bibliotheken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174<br />
8.6 Implementierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175<br />
8.7 Konsistenz von Schnittstelle und Implementierung . . . . . . . . . . . . 178<br />
9 Objektkonzept 181<br />
9.1 Geschichte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181<br />
9.2 Mehrfachvererbung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183<br />
9.3 Implementierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183<br />
10 Ausnahmebehandlung 189<br />
10.1 <strong>Entwurf</strong>sentscheidungen zur Ausnahmebehandlung . . . . . . . . . . . 194<br />
10.2 Ausnahmebehandlung in PL/I . . . . . . . . . . . . . . . . . . . . . . . . 195<br />
10.3 Ausnahmebehandlung in CLU . . . . . . . . . . . . . . . . . . . . . . . . 196<br />
10.4 Ausnahmebehandlung in Ada . . . . . . . . . . . . . . . . . . . . . . . . . 198<br />
10.5 Ausnahmebehandlung in ISO Modula-2 . . . . . . . . . . . . . . . . . . . 199<br />
10.6 Ausnahmebehandlung in C++ . . . . . . . . . . . . . . . . . . . . . . . . 203<br />
10.7 Ausnahmebehandlung in Modula-3 . . . . . . . . . . . . . . . . . . . . . 203<br />
10.8 Programmieren ohne Ausnahmebehandlung . . . . . . . . . . . . . . . . 204<br />
10.9 Bewußte Erzeugung von Ausnahmen . . . . . . . . . . . . . . . . . . . . 206<br />
11 <strong>Entwurf</strong> von <strong>Programmiersprachen</strong> 207<br />
12 Kritik an <strong>Programmiersprachen</strong> 213<br />
12.1 Kritik durch die Entwerfer . . . . . . . . . . . . . . . . . . . . . . . . . . . 214<br />
12.2 Kritik am Blockkonzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216<br />
12.3 Kritik von anderer Seite . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217<br />
A Ein wenig Geschichte 219<br />
A.1 1950er: Frühe Experimente . . . . . . . . . . . . . . . . . . . . . . . . . . . 229<br />
A.2 1960er: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230<br />
A.3 1970er: Semantik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231<br />
A.4 1980er: Softwaretechnik und Funktionale Programmierung . . . . . . . . 231<br />
A.5 1990er: Objekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232