Informatik I, WS 09/10

Das Teachpack binary-trees.ss

Das Teachpack enthält alle für das Erstellen von Binärbäumen im Scheme-Sprachlevel DMdA notwendigen Funktionen (hierbei halten sich die Definitionen an die Vorlesung Informatik I von Prof. Thiemann). Außerdem bietet es die Möglichkeit, die Binärbäume über Grafiken zu visualisieren. Wahlweise lassen sich leere Teilbäume ausblenden (Achtung: Die Darstellung ist in diesem Modus manchmal noch fehlerhaft!) oder eine eigene Funktion für das Umwandeln der Labels in einen String übergeben.
Wichtig: Das Teachpack ersetzt auch Funktionen wie make-node. Bei einer Abgabe (Übungsblatt oder Betreutes Programmieren) sind alle nötigen Funktionen von Hand hinzuzufügen, sodass sich die Abgabe auch kompilieren lässt, wenn das Teachpack nicht installiert ist.

Download binary-trees.ss (Version 1.0.09)

Für die Installation bitte folgende Schritte ausführen: Sprache -> Teachpack hinzufügen... -> Teachpack zu Liste hinzufügen...
Jetzt den Speicherort des Teachpacks auswählen, bestätigen, in der Liste markieren und OK drücken.

Ein beispielhafter Funktionsaufruf sähe wie folgt aus:

(btree->image
 (make-node (make-leaf 4)
            1
            (make-node (make-node (make-leaf 2)
                                  5
                                  the-empty-tree)
                       3
                       (make-leaf 6))))

Update: Das Teachpack unterstützt nun erweiterte Funktionen auf Binärbäumen (zum Beispiel die Umwandlung eines Baumes in TeX-Code), sowie Definitionen für Treaps (Bäume, die sowohl Such- als auch Heapeigenschaft erfüllen).

Das Teachpack simple-image-output.ss

Das Teachpack bietet lediglich eine Funktion an. Mit save-image können Grafiken, wie sie beispielsweise durch die Funktion btree->image aus dem Teachpack binary-trees.ss erstellt werden können, im PNG-Format in Dateien geschrieben werden.

Download simple-image-output.ss (Version 1.0.03)

Ein Aufruf von save-image auf das Ergebnis des Funktionsaufrufs von btree->image und den Dateinamen "test.png" liefert zum Beispiel folgendes Bild:

Visualisierter Binärbaum

Das Teachpack testing.ss

Das Teachpack bietet den Test check-for-error an, mit dem geprüft werden kann, ob ein Ausdruck einen Fehler wirft. Der Unterschied zu check-error liegt darin, dass check-for-error kein zweites Argument akzeptiert und somit nicht auf eine spezifische Fehlermeldung beschränkt ist, sondern allgemein auf Fehler testet.

Download testing.ss