Aho, Sethi, Ullman: Compilers (Dragon book) Informatik-Vollmer
    

Vorlesung
Übersetzerbau

Inhalt

Dies ist eine Einführung in den Übersetzerbau und seine Werkzeuge für Studierende der Fachrichtung Informationstechnik und angewandte Informatik an der Dualen Hochschule Baden-Württemberg in Karlsruhe, (bis März 2009 bekannt als Berufsakademie Karlsruhe). Es werden die grundlegenden Konzepte: Syntax und Semantik einer Programmiersprache, Generation und Akzeption sowie Compilerbau-Werkzeuge zur Implementierung von Compilern vorgestellt. Es wird allerdings nur die "Analysephase", d.h. lexikalische und syntaktische Analyse eines Compilers besprochen. Die Erstellung eines vollständigen Compilers mit Optimierung und Codegenerierung würde den Rahmen einer DHBW-Vorlesung sprengen, während es doch häufiger vorkommt "kleine" Parser für anwenderspezifische Sprachen selbst zu implementieren.

Vorlesungsunterlagen

Die Unterlagen können von hier heruntergeladen werden:

Sonstige Unterlagen

Wait & Goos: Compiler Construction

Das Buch Compiler Construction von William M. Waite (University of Colorado) und Gerhard Goos (Universität Karlsruhe) kann hier heruntergeladen werden.

From the back page of the printed book.
Compiler Construction, a modern text written by two leaders in the in the field, demonstrates how a compiler is built. Describing the necessary tools and how to create and use them, the authors comp ose the task into modules, placing equal emphasis on the action and data asp ects of compilation. Attribute grammars are used extensively to provide a uniform treatment of semantic analysis, comp etent code generation and assembly. The authors also explain how intermediate representations can b e chosen automatically on the basis of attribute dep endence. Thus, all asp ects of the sub ject are presented in terms of a uniform model sub ject to automation. This approach imparts a vivid understanding of the compilation and the decisions that must b e made when designing a compiler.

Niklaus Wirth: Compiler Construction

Auf der Webseite zur Wirth's Vorlesung ist zu diesem Buch zu lesen:

A refreshing antidote to heavy theoretical tomes, this book is a concise, practical guide to modern compiler design and construction by an acknowledged master. Readers are taken step-by-step through each stage of compiler design, using the simple yet powerful method of recursive descent to create a compiler for Oberon-0, a subset of the author's Oberon language.

Das Buch selbst ist online verfügbar (lokale Kopie)

Unix-Kommandos

Ein kurze Einführung wichtiger Unix-Kommandos, wie sie für den praktischen Teil der Vorlesung benötigt werden findet sich hier.

Praktische Übungen

Die Vorlesung wird von praktischen Übungen begleitet. Die notwendige Software wird Ihnen per DVD als VMware-Image eines SuSE 10.3 Linux-Systems zur Verfügung gestellt.
Die DVD enthält:

Installation und Starten des Gastbetriebssystems

  1. Bitte folgen Sie den Anweisungen auf den Seiten VMware Player Documentation zur Installation des Players.
  2. Kopiern Sie bzw. entpacken Sie die auf dem verteiulten USB-Stick enthaltenen Dateien bzw. ZIP-Archive vmware-suse-10.3.zip.
  3. Nach der Installation des Players, starten Sie diesen und laden das SuSE 10.3 Image, d.h. die Datei SuSE-10.3.vmx, im Player. Nachdem das Gastbetriebsystem hochgefahren ist, werden Sie automatisch als Benutzer user an der KDE Overfläche angemeldet.
  4. Es ist nicht notwendig irgendwelche Updates für das Gastbetriebsystem zu installieren. Aus diesem Grund erhalten Sie auch keinen root-Zugang für das Gastbetriebsystem.

Die Cocktail Toolbox

Die Cocktail Toolbox werden von der Firma CoCoLab entwickelt und wurden dankenswerter Weise als Demo-Version für die private Nutzung der Teilnehmer dieser Vorlesung zu Verfügung gestellt.

Mit der Installation, der Ihnen per DVD zur Verfügung gestellten Software, erklären Sie sich damit einverstanden,

Sie können via dieser Web-Seite noch folgende Dinge herunterladen:

Sonstige Werkzeuge

Möchten Sie den Editor vi (oder auch vim genannt) mit Syntaxeinfärbung, dann erstellen Sie eine Datei /home/user/.vimrc mit der Zeile:
syntax on
und ein Verzeichnis /home/user/.vim und kopieren Sie die Dateien aus dem Verzichnis vim-mode des Plus Archives nach Verzeichnis /home/user/.vim.

Für den Syntaxhervorhebung im emacs lesen Sie bitte die Datei emacs-mode/README des Plus Archives.

Beispielprogramme

Die in der Vorlesung benutzen Beispielprogramme können hier heruntergeladen werden. Diese Dateien sind allerdings auch schon im Verzeichnis /home/user/programme auf dem Image enthalten.

Tippfleher und anderes

Wie in der Vorlesung ausgemacht:

Zugang zu den Materialen

Für den Zugang zu den Unterlagen wird ein Benutzername und Passwort benötigt. Diese werden in den Vorlesungen bekannt gegegeben. Nicht-Hörer der Vorlesungen, die Interesse an den Unterlagen haben, mögen sich an mich <vollmer@dhbw-karlsruhe.de>, Karlsruhe wenden.

Copyright der Vorlesungsunterlagen

© 1996-2011, Prof. Dr. Jürgen Vollmer <vollmer@dhbw-karlsruhe.de>, Karlsruhe

Das Material (Vorlesungsunterlagen und Cocktail-Tools incl. Lizenzdatei) dürfen nicht anderweitig weitergegeben oder veröffentlicht werden. Insbesondere dürfen diese Materialien nicht auf irgendwelchen, der Öffentlichkeit zugänglichen Servern abgelegt werden.

Zum Bild links oben

Das Bild zeigt den Buchdeckel des Drachenbuch genannten Standardlehrbuches Compilers: Principles, Techniques and Tools von Alfred V. Aho, Ravi Sethi und Jeffery D. Ullman (Addison Wesley 1986). Dieses Buch gibt es inzwischen auch in einer deutschen Übersetzung.

Dr. Jürgen Vollmer (www.informatik-vollmer.de)
Diese Seite wurde am 09. Oktober 2011 aktualisiert