Informatik 1 (Programmierung) WS 98/99

Literatur

Inhalt

Literatur

Skript
ML
Emacs
Programmierung

Software

ML-Systeme
Emacs
Ghostview

Übungen

Aufgabenblätter
Gruppeneinteilung
Punktestand
CIP-Rechner

Tip zur Beschaffung: Das Buch von Paulson hat die Campus-Buchhandlung in rauhen Mengen vorliegen. Abelson/Sussman ist ebenfalls in diversen Exemplaren da. Für Bestellungen haben wir sehr gute Erfahrungen mit dem Internet-Buchhandel Amazon gemacht: halbwegs gängige Titel sind in weniger als einer Woche da.

Online verfügbare Postscript-Dokumente kann man entweder auf einem fähigen Drucker direkt ausdrucken, oder sich mit Ghostview anschauen.

Skript

ML

Es gibt einiges an Literatur zu Standard ML. Für die Vorlesung sind folgende Bücher interessant:

  • Larry Paulson: ML for the Working Programmer (2nd edition). Cambridge University Press 1996.

    Ein sehr schönes Buch um funktionale Programmierung und SML zu lernen. Sollte sich auf jeden Fall jeder zulegen!

  • Jeffrey Ullman: Elements of ML Programming (ML97 edition). Prentice-Hall 1998.

    Bietet ebenfalls eine gute Einführung in ML. Mehr ein `Kochbuch'.

  • Matthias Felleisen, Dan Freidman: The Little MLer. The MIT Press 1998.

    Ein Buch, welches ML durch ein Spiel von Fragen und Antworten einführt. Etwas gewöhnungsbedürftig, aber lockerer als viele andere Bücher.

  • Robin Milner, Mads Tofte, Robert Harper, David MacQueen: The Definition of Standard ML (Revised). The MIT Press 1997.

    Die offizielle Sprachdefinition von Standard ML. In der Vorlesung Informatik 3 werden Sie genügend über die formale Beschreibung von Programmiersprachen lernen, um dieses Werk verstehen zu können.

Auch in elektronischer Form existieren diverse Texte. Hier die wichtigsten:

Weitere Buchtitel und Online-Links findet man zum Beispiel auf der Homepage von SML/NJ. Allerdings ist viel Online-Material zu SML noch nicht an die aktuelle Sprachversion angepasst.

Programmierung im Allgemeinen

Es gibt sehr viele interessante Lehrbücher zu diesem Thema, einige eher praktisch, andere eher theoretisch. Hier ist eine Auswahl:

  • Harold Abelson, Gerald Sussman, Julie Sussman: Structure and Interpretation of Computer Programs (2nd edition). The MIT Press 1996.

    Eine hervorragende Einführung in die funktionale Programmierung, benutzt aber das etwas veraltete `Scheme'.

  • Harold Abelson, Gerald Sussman, Julie Sussman: Struktur und Interpretation von Computerprogrammen. Springer-Verlag 1993.

    Eine ältere Version des gleichen Buchs, aber in deutsch. Die 2. Auflage soll im November erscheinen. Im allgemeinen sind aber die englischen Originale besser! So auch hier.

  • Manfred Broy: Informatik. Eine grundlegende Einführung. Teil 1: Programmierung und Rechnerstrukturen. Springer 1998.

    Herr Broy ist Informatikprofessor an der TU München. Seine Einführung in die Programmierung ist theoretischer angelegt als unsere und legt sich nicht auf konkrete Programmiersprachen fest.

  • Gerhard Goos: Vorlesungen über Informatik. Band 1: Grundlagen und funktionales Programmieren Springer 1997.

  • Gerhard Goos: Vorlesungen über Informatik. Band 2: Objektorientiertes Programmieren und Algorithmen. Springer 1996.

    Herr Goos ist Informatikprofessor an der Universität Karlsruhe. Band 1 benutzt die funktionale Sprache Haskell und Band 2 die objektorientierte Sprache Sather.

  • Jacques Loeckx, Kurt Mehlhorn, Reinhard Wilhelm: Grundlagen der Programmiersprachen. Teubner 1986.

    Die Autoren sind Informatikprofessoren hier in Saarbrücken, Herr Loeckx ist seit 1996 im Ruhestand. Das Buch ist eher theoretisch und arbeitet mit einer idealisierten imperativen Programmiersprache PROSA. Zusätzlich wird die Maschinensprache RESA eines idealisierten Rechners eingeführt und die Übersetzung von PROSA nach RESA behandelt.

Unix

Als kleine Einführung in das Betriebssystem Unix kann folgende Dokumente dienen:

Ersteres ist wahrscheinlich für Anfänger eher zu empfehlen. Ansonsten wird an der Uni auch ein Unix-Kurs angeboten.

Emacs

Zum Editor Emacs gibt es zwar kaum Bücher, dafür sind aber alle wichtigen Manuals online zu finden:

Die Reference Card bietet eine nützliche Übersicht über die wichtigsten Emacs-Kommandos.


Andreas Rossberg