Inhalt
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.
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.
Titel
Einführung in die funktionale Programmierung mit Miranda
Autor
EAN
9783322930903
Format
E-Book (pdf)
Hersteller
Genre
Veröffentlichung
09.03.2013
Digitaler Kopierschutz
Wasserzeichen
Dateigrösse
27.91 MB
Anzahl Seiten
347
Auflage
1992
Lesemotiv
Unerwartete Verzögerung
Ups, ein Fehler ist aufgetreten. Bitte versuchen Sie es später noch einmal.