Die funktionale Programmiersprache Haskell (aus dem 3. Semester bekannt) ermöglicht
durch ihre mächtigen Konzepte, dreimal schneller Programme zu entwickeln als
andere Sprachen wie C++ oder Java.
Zudem ist auch imperative Programmierung in Haskell
möglich. Es handelt sich also um eine Sprache, die auch für realistische
Anwendungen genutzt werden kann (und wird).
Der funktionale Aufbau von Haskell macht die Spezifikation wesentlich einfacher
als bei herkömmlichen Sprachen. Zudem ist es möglich, Programme
aus spezifizierenden Gleichungen zu synthetisieren.
In dieser Vorlesung geht es um die von Bird und de Moor in ihrem gleichnamigen
Buch entworfene "Algebra of Programs". Sie geht aus von allgemeinen Gleichungen,
die Datentypen und Programme charakterisieren, und wird mit vielen praktischen
Beispielen, u.a. Optimierungsproblemen, illustriert.
Kontakt:
Lutz Schröder www EMail
Till Mossakowski www EMail