Software Prototyping mit SETL - Doberkat, Ernst-Erich 1948- (Vieweg+Teubner Verlag, 1989)
wir die Sprache als Vehikel nutzt - dort werden jedoch Elemente der diskreten Mathematik transportiert. Da Fragen des Prototyping im Vordergrund stehen, haben wir zwei in SETL vorhandene Mechanismen hier nicht behandelt: die data representation sublanguage (DRSL) und Backtracking. Die DRSL erlaubt die Deklaration von Variablen mit ihrer Speicherdarstellung (analog zur Variablendeklaration in Sprachen wie Pascal); sie ist in der gegenwärtigen Form nicht besonders nützlich. Backtracking als nicht-deterministisches Programmieren hat noch keinen Eingang in den Werkzeugkasten des Software Prototyping gefunden und wurde daher auch nicht behandelt. Ansonsten haben wir eine vollständige Einführung in SETL gegeben; ein kurzer Überblick über den Inhalt folgt. Das erste Kapitel behandelt die zentralen primitiven Kontroll- und Datenstrukturen und zeigt, wie Makros und Prozeduren definiert und benutzt werden. Wir wenden das auf die Konstruktion eines Scanners für Pascal-Programme an, um zu zeigen, daß man hiermit schon sinnvolle Probleme bearbeiten kann. Im zweiten Kapitel werden zusammengesetzte Datentypen (Mengen, Thpel, Abbildungen) behandelt, und die notwendigen Ergänzungen im Hinblick auf Kontrollstrukturen angebracht. Kapitel 3 wendet dann die Sprache auf einige Probleme an, um dem Leser ein vertieftes Gefühl für den Umgang mit SETL zu geben. Wir diskutieren den Algorithmus von Knuth, Morris und Pran zum Auffinden von Mustern in Zeichenketten, ein Verfahren zum dynamischen Hashing, und spezifizieren einen Parsergenerator für eine einfache Klasse kontextfreier Grammatiken. Insbesondere das letzte Beispiel zeigt, wie sich komplexe Algorithmen kompakt und verständlich in SETL formulieren lassen