1 Einleitung.- 1.1 Eigenschaften funktionaler Sprachen.- 1.2 Überblick über Miranda.- 1.3 Warum nicht LISP oder Scheme?.- 1.4 Literaturhinweise.- 2 Vordefinierte Typen.- 2.1 Der Typ num.- 2.2 Der Typ bool.- 2.3 Der Typ char.- 2.4 Tupeltypen.- 2.5 Listentypen.- 2.6 Funktionale Typen.- 2.7 Miranda-System.- 2.8 Syntax.- 3 Definitionen.- 3.1 Skalare Definitionen.- 3.2 Konforme Definitionen.- 3.3 Lokale Definitionen.- 3.4 Syntax.- 4 Typsystem.- 4.1 Parametrisierter Typpolymorphismus.- 4.2 Typinferenz.- 4.3 Wertespezifikationen.- 4.4 Typsynonyme.- 4.5 Die generische Funktion show.- 4.6 Literaturhinweise.- 4.7 Syntax.- 5 Funktionen höherer Ordnung.- 5.1 Partiell parametrisierte Funktionen.- 5.2 Operator-Sections.- 5.3 Generische Funktionen.- 5.4 Funktionen als Datenstrukturen.- 5.5 Implementierung von Rekursionsmustern.- 5.6 Literaturhinweise.- 5.7 Syntax.- 6 List-Comprehensions.- 6.1 Einfache List-Comprehensions.- 6.2 Iterative Generatoren.- 6.3 Diagonalisierende List-Comprehensions.- 6.4 Syntax.- 7 Benutzerdefinierte Typen.- 7.1 Algebraische Datentypen.- 7.2 Abstrakte Datentypen.- 7.3 Platzhaltertypen.- 7.4 Literaturhinweise.- 7.5 Syntax.- 8 Lazy Evaluation.- 8.1 Eager Evaluation versus Lazy Evaluation.- 8.2 Nichtstrikte Funktionen.- 8.3 Backtracking-Probleme.- 8.4 Kombinator-Parsing.- 8.5 Von Prolog zu Miranda.- 8.6 Unendliche Datenstrukturen.- 8.7 Programmierung mit Unbekannten.- 8.8 Steuerung der Auswertung.- 8.9 Literaturhinweise.- 9 Programmierung im Großen.- 9.1 %include- und %export-Direktive.- 9.2 Parametrisierte Module.- 9.3 Software-Engineering.- 9.4 Programmierrichtlinien für Miranda.- 9.5 Literaturhinweise.- 9.6 Syntax.- 10 Interaktive Programme.- 10.1 Eingabe.- 10.2 Interpretierte Eingabe.- 10.3 Ausgabe.- 10.4 Einbindung in UNIX.- 10.5 FortsetzungsbasierteEin- und Ausgabe.- 10.6 Literaturhinweise.- A Kleine Projekte.- A.1 Taschenrechner.- A.2 Datenbank.- A.3 KWIC-Index.- A.4 Textformatierung.- B Blaise-Compiler.- B.1 Ziel des Projektes.- B.2 Projektbeschreibung.- B.2.1 Definition von Blaise.- B.2.2 Definition der Zielmaschine.- B.2.3 Programmierumgebung.- B.3 Projektorganisation.- B.3.1 Gruppe 1: Lexikalische Analyse und Symboltabelle.- B.3.2 Gruppe 2: Syntaktische Analyse.- B.3.3 Gruppe 3: Codeerzeugung.- B.3.4 Gruppe 4: Interpreter und Programmierumgebung.- Literatur.