Nr. | Art | Termine | Raum | Veranstalter |
---|---|---|---|---|
V4 | Di 12:15 - 13:45 | LMS2 - Ü1 | M. Hanus | |
Do 10:30 - 12:00 | LMS2 - Ü1 | |||
Ü2 | Mi 14 - 16 | LMS - Ü2 | M. Hanus, K. Höppner |
Studierende im Hauptstudium beider Informatik-Studiengänge (Dipl.-Inf. und Dipl.-Ing.), Studierende im Bachelor-Studiengang Informatik sowie Studierende mit Nebenfach Informatik
Grundstudium
Aufgrund der Komplexität heutiger Software-Systeme ist die Verwendung von Programmiersprachen mit einem hohen Abstraktionsniveau notwendig. Deklarative Sprachen bieten hierzu wichtige Lösungsansätze. Aufgrund ihrer deklarativen Struktur sind die Programme leichter wartbar und verifizierbar (man denke an die immer wichtiger werdenden Sicherheitsaspekte wie z.B. im Internet). In dieser Vorlesung werden Konzepte moderner deklarativer Programmiersprachen vorgestellt.Ausgehend von dem aus dem Grundstudium bekannten Konzept der funktionalen Programmierung, das kurz wiederholt und eingehender erläutert wird, werden funktionale Sprachen um logische Anteile erweitert, um die Konzepte der funktionalen, logischen und integrierten logisch-funktionalen Sprachen in einem einheitlichen Rahmen darzustellen. Außerdem werden Techniken und Erweiterungen zur nebenläufigen und objektorientierten Programmierung vorgestellt, mit denen es möglich ist, verteilte Systeme (z.B. Internet-basiert) effizient zu implementieren.
In den begleitenden Übungen werden für praktische Programmieraufgaben die Sprachen Haskell und Curry eingesetzt, für die es frei verfügbare Implementierungen für Unix- und Linux-Systeme gibt. Informationen zu den Übungen und zur Benutzung von Haskell und Curry kann man hier finden.
Weitere Literatur wird in der Vorlesung bekanntgegeben.
- P. Hudak: The Haskell School of Expression: Learning Functional Programming through Multimedia, Cambridge University Press, 1999
- S. Thompson: Haskell - The Craft of Functional Programming, Addison-Wesley, 1996
- L. Sterling, E. Shapiro: The Art of Prolog, 2nd Ed., MIT Press, 1994
- M. Hanus: The Integration of Functions into Logic Programming: From Theory to Practice, Journal of Logic Programming, Vol. 19,20, pp. 583-628, 1994
- R. Loogen: Integration funktionaler und logischer Programmiersprachen, Oldenbourg 1995
- H. Boley: A Tight, Practical Integration of Relations and Functions, Springer LNCS 1712, 1999
- Armstrong et al: Concurrent Programming in Erlang, Prentice Hall, 1996