Achim Clausing

Programmiersprachen
Konzepte, Strukturen und
Implementierung in Java

Spektrum
Akademischer Verlag

1. Aufl. 2011, XII, 450 S., 40 Abb.
Softcover
ISBN 978-3-8274-2850-9
29,95 €

    Programmiersprachen, Cover    



Das Buch behandelt grundlegende Konzepte und Strukturen von Programmiersprachen. Zu diesem Zweck werden sieben kleine Programmiersprachen entwickelt, jeweils mit vollständiger Implementierung in Java, von denen jede für ein Programmierparadigma steht:

  • t.Zero - deklarative Programmierung
  • t.Lisp - listenbasierte Programmierung
  • t.Pascal - imperative Programmierung
  • t.Scheme - funktionale Programmierung
  • t.Lambda - rein funktionale Programmierung
  • t.Java - objektorientierte Programmierung
  • t.Prolog - logische Programmierung

Das 't.' steht dabei für 'tiny', 'toy' oder auch 'teaching'. Jede dieser Sprachen ist eine Miniaturausgabe ihres Originals, eine Art Lehr- und Lernspielzeug - syntaktisch und semantisch stark vereinfacht, aber doch nur so weit, dass die charakteristische Art, in der jeweiligen Sprache zu denken und zu programmieren, erhalten bleibt. Zu jeder Sprache wird eine knappe Einführung in die wichtigsten Sprachelemente gegeben, ferner eine Anzahl charakteristischer Anwendungsbeispiele und eine informelle Beschreibung der Implementierung. Die Implementierung der sieben Sprachen beruht auf einem gemeinsamen Interpreter-Kern; der gesamte Java-Quellcode ist nur etwa 250 kB groß und gut lesbar.

Das Buch richtet sich primär an Studierende der Informatik und verwandter Fächer sowie an Leserinnen und Leser mit grundlegenden Java-Vorkenntnissen, die sich für das Innenleben von Programmiersprachen interessieren. Der Text ist aber so organisiert, dass man den Implementierungsteil auch ignorieren und die Sprachen nur zum Kennenlernen verschiedener Programmierparadigmen benutzen kann.

Sie können sich hier das Inhaltsverzeichnis und die Einleitung ansehen. Von der Webseite des Verlags zum Buch können einzelne Kapitel heruntergeladen werden.

Den Java-Quellcode für die Programmiersprachen, die zugehörigen Class-Dateien und alle Beispiele aus dem Buch gibt es als Zip-Archiv (ca. 0,8 MB, entpackt 2 MB). Es kann an einer beliebigen Stelle gespeichert und entpackt werden.

Download

Beim Entpacken von tanagra.zip wird ein Verzeichnis tanagra erzeugt. Es enthält unter anderem eine Installationsanleitung für die Software zum Buch.

28. 12. 2011: Im Quellcode der Klassen LinkList, Operator und NumberOp wurden kleine Änderungen vorgenommen, um Warnungen abzustellen, die der Compiler von Java 1.7 sonst ausgibt. Vielen Dank an Reinhard Schiedermeier für den Hinweis!


Achim Clausing
Institut für Informatik
Westfälische Wilhelms-Universität Münster
Email:
achim.clausing(at)uni-muenster.de