Neuigkeiten
26.10.2018 | Die Klausurergebnisse für die Klausur vom 26.10.2018 hängen aus (Gebäude 50.34, gegenüber von der Informatik-Bibliothek und gegenüber des Sekretariats des Lehrstuhls Snelting). |
22.10.2018 |
Die Klausurergebnisse für die Klausur vom 26.09.2018 werden Die Klausureinsicht findet am Montag, den 29.10.2018, zwischen 10:00 Uhr und 11:00 Uhr im Raum 010 im Informatik-Gebäude (50.34) statt. Studierende, die die Prüfung wiederholt nicht bestanden haben, werden per E-Mail über den Termin ihrer mündlichen Nachprüfung benachrichtigt. Bitte melden Sie sich nach Erhalt dieser E-Mail so schnell wie möglich per Mail bei Simon Bischof und Sebastian Ullrich, um Ihren Termin zu bestätigen. |
27.09.2018 | Falls Sie eine 4,0-Bescheinigung benötigen, schreiben Sie bitte eine kurze diesbezügliche Mail an Simon Bischof und geben Sie Ihren vollen Namen und Ihre Matrikelnummer an. Sollten Sie Probleme mit Fristen bekommen, kommen Sie bitte zu Prof. Snelting in die Sprechstunde. Für eine Ummeldung zum Master am KIT zum WS18/19 sollten die Noten rechtzeitig eingetragen sein. Sie sollten in diesem Fall keine 4,0-Bescheinigung benötigen. |
24.09.2018 | Die Klausur am 26.09.2018 findet im Audimax statt. |
07.06.2018 | Die Anmeldung für die Klausur am 26.09.2018 ist nun freigeschaltet. Anmeldeschluss ist der 19.09.2018. |
09.05.2018 |
Die Klausurergebnisse für die Klausur vom 05.04.2018 hängen jetzt aus. Mündliche Nachprüfungen für Studierende, die die Prüfung wiederholt nicht bestanden haben, werden vom 15.05.2018 bis 18.05.2018 stattfinden. |
07.05.2018 |
Die Klausurergebnisse für die Klausur vom 05.04.2018 werden voraussichtlich am Mittwoch, den 09.05.2018, ausgehängt (Gebäude 50.34, gegenüber von der Informatik-Bibliothek und gegenüber des Sekretariats des Lehrstuhls Snelting). Die Klausureinsicht findet am 14.05.2018 zwischen 11:45 Uhr und 14:30 Uhr im Raum 010 im Informatik-Gebäude (50.34) statt. Mündliche Nachprüfungen für Studierende, die die Prüfung im Drittversuch nicht bestanden haben, werden am 15.05.2018 und 16.05.2018 stattfinden. Die Prüfungstermine für Studierende, die im Zweitversuch nicht bestanden haben, werden noch bekannt gegeben. Betroffene Studierende werden per E-Mail über ihren Nachprüfungstermin benachrichtigt. Bitte melden Sie sich nach Erhalt dieser E-Mail so schnell wie möglich per Mail beim Sekretariat, um Ihren Termin zu bestätigen. |
18.04.2018 | Die Klausur im SS2018 wird am 26.09.2018, 10:00-12:00 Uhr im Hörsaal am Fasanengarten und Audimax stattfinden. |
05.04.2018 |
Falls Sie eine 4,0-Bescheinigung benötigen, schreiben Sie bitte eine kurze diesbezügliche Mail an das Sekretariat und geben Sie Ihren vollen Namen und Ihre Matrikelnummer an. Sollten Sie Probleme mit Fristen bekommen, kommen Sie bitte zu Prof. Snelting in die Sprechstunde.
Nachtrag 18.04.2018: Für eine Ummeldung zum Master zum SS18 sollten die Noten rechtzeitig eingetragen sein, da die Ummeldung noch bis Ende Mai erfolgen kann. Sie sollten in diesem Fall keine 4,0-Bescheinigung benötigen. |
28.03.2018 | Die Hörsaaleinteilung steht nun fest. Bitte denken Sie daran, zur Klausur neben dem Studierendenausweis einen gültigen, amtlichen Lichtbildausweis mitzubringen! |
09.02.2018 | Wie in der Vorlesung angekündigt, findet am Mittwoch, den 28.03.2018, um 14:00 Uhr im Raum -101 im Informatikbau (50.34) eine Fragestunde statt, in der Übungsleiter und Tutoren Fragen zum Vorlesungsstoff beantworten. Idealerweise schicken Sie schon vor dem Termin Ihre Fragen per E-Mail an die Übungsleiter (Sebastian Ullrich, Simon Bischof) oder stellen Ihre Fragen im ILIAS-Forum. |
26.01.2018 |
Da die Vorlesungszeit in zwei Wochen endet, wird in den Übungen in der letzten Vorlesungswoche
|
15.01.2018 | Die Anmeldung für die Klausur am 05.04.2018 ist nun freigeschaltet. Anmeldeschluss ist der 27.03.2018. |
05.12.2017 | Der vorläufige Terminplan wurde um die Termine im Jahr 2018 ergänzt. |
02.12.2017 | Bitte beachten Sie, dass Blatt 7 aktualisiert wurde: Die Aufgabe "Tester & Generatoren" wurde auf das nächste Blatt verschoben und durch eine neue Aufgabe ersetzt. |
30.11.2017 | Am Dienstag, den 5.12.2017, finden die Übungsgruppen 7 (Tobias Kahlert 11:30) und 10 (Jonas Sauer 14:00) einmalig in Raum 010 (Nordflügel) statt. |
09.11.2017 | Der vorläufige Terminplan wurde angepasst: Am Freitag, den 24.11.2017, findet keine Vorlesung statt. Am Freitag, den 01.12.2017, findet die Vorlesung statt. |
21.10.2017 | Die WebInscribe-Einteilung für die Übungsgruppen ist abgeschlossen. Die Ergebnisse sind unter https://webinscribe.ira.uka.de/progpar2017 verfügbar. |
18.10.2017 |
Hinweis: Da am Dienstag, den 31.10.2017, ein Feiertag ist, bieten wir folgende Ersatztermine an:
|
Inhalt
In den Übungen werden die Themen der Vorlesung Programmierparadigmen wiederholt und vertieft. Weiterhin werden die Übungsaufgaben vorgestellt und die Lösungen besprochen.Material
Das Vorlesungs- und Übungsmaterial darf ausschließlich zu Zwecken genutzt werden, die in direktem Zusammenhang mit der Veranstaltung Programmierparadigmen stehen. Insbesondere die Weitergabe des hier zur Verfügung gestellten Materials an Dritte ist nicht gestattet. Foliensätze, Übungsblätter und hier veröffentlichter Quell-Code unterliegen dem Copyright des Lehrstuhls Programmierparadigmen (IPD Snelting).
Das Material kann nur aus dem Uni-Netz heruntergeladen werden. Verwenden Sie bitte den VPN-Client des SCC, falls Sie von außerhalb Zugriff benötigen.
Bearbeitung der Übungsaufgaben
Die Bearbeitung der Übungsaufgaben ist keine Voraussetzung für die Teilnahme an der Klausur. Wir empfehlen Ihnen trotzdem sehr, die Übungsaufgaben selbstständig zu bearbeiten und regelmäßig an den Übungen teilzunehmen. Insbesondere empfehlen wir, selbst am eigenen Rechner mit den vorgestellten Programmiersprachen zu experimentieren und eigene Programme zu schreiben!
Digitale Lösungen können in unserer Praktomat-Instanz abgegeben werden, Lösungen auf Papier in unserem Abgabekasten im Untergeschoss des Informatikgebäudes; nähere Informationen entnehmen Sie bitte dem jeweiligen Übungsblatt. Ihre Abgaben werden von Ihrem Tutor korrigiert und digital bzw. in der entsprechenden Übung zurückgegeben.
Forum
Für Fragen, Hilfe und Gedankenaustausch zur Übung oder den Übungsaufgaben stehen Foren im ILIAS zur Verfügung.
Termine
Die Übungsgruppen finden wöchentlich statt! Die erste Übung ist am 23.10.2017 bzw. am 24.10.2017. Alle Übungsgruppen finden in Seminarräumen des Informatik-Baus (Gebäude 50.34) statt.
Gruppe | Tag | Beginn | Ort | Gruppenleiter |
---|---|---|---|---|
1 | Montags | 09:45 Uhr | SR 131 | Roman Langrehr |
2 | Montags | 11:30 Uhr | SR 236 | Henning Dieterichs |
3 | Montags | 14:00 Uhr | SR 131 | Daniel Krüger |
4 | Montags | 14:00 Uhr | SR 301 | Jonas Sauer |
5 | Montags | 17:30 Uhr | SR 236 | Roman Langrehr |
6 | Dienstags | 09:45 Uhr | SR 236 | Tobias Kahlert |
7 | Dienstags | 11:30 Uhr | SR 131 | Tobias Kahlert |
8 | Dienstags | 11:30 Uhr | SR 301 | Henning Dieterichs |
9 | Dienstags | 14:00 Uhr | SR -119 | Daniel Krüger |
10 | Dienstags | 14:00 Uhr | SR 131 | Jonas Sauer |
Programmierparadigmen VM-Image
Eine Virtuelle Maschine mit vorinstallierten Entwicklungsumgebungen für alle in der Vorlesung behandelten Sprachen ist verfügbar.
Haskell
Zum Experimentieren und zur Bearbeitung der Übungsaufgaben zum Thema funktionale Programmierung benötigen Sie eine Haskell Programmierumgebung. Wir empfehlen dazu die Installation der
Diese enthält neben einem Compiler (GHC) auch den Interpreter GHCi. Falls Sie Ihre Haskell-Programme nicht in einem einfachen Texteditor schreiben wollen, empfehlen sich
- Die Haskell-IDE Leksah
Die Haskell Platform ist auch auf den Rechnern im ATIS-Rechnerpool verfügbar.
Neben der in der Vorlesung empfohlenen Literatur weisen wir auch auf folgende Online-Einführungen hin:
- O'Sullivan,Stewart,Goerzen Real World Haskell
- Lipovača Learn You a Haskell - for Great Good!
λ-Kalkül
Zum Ausprobieren können Sie die aus PSE entstandene Web-IDE verwenden:
Oder einen der zahlreichen anderen Web-Interpreter:
- lambda [Tobias Kahlert, auf github]
- LambdaCalculus2 [Henning Dieterichs, auf github]
- Alligator Eggs Calculator [Takashi Yamamiya, auf github]
Prolog
Zur Bearbeitung der Übungsaufgaben zum Thema logische Programmierung benötigen Sie eine Prolog-Programmierumgebung. Zum Einstieg reicht hierfür eine Web-IDE:
Gängige Prolog-Implementierungen, jeweils verfügbar für Linux/Windows/MacOS X, sind:
Neben einem normalen Texteditor gibt es zur Bearbeitung von Prolog-Programmen u.A.
- den SWI-Prolog Editor (Windows)
- das Eclipse Plugin Prolog Development Tool
Als zusätzliche Lernmaterialien empfehlen wir folgende Online-Einführung:
- Patrick Blackburn, Johan Bos, Kristina Striegnitz Learn Prolog Now!
Hiervon existiert auch eine Variante mit integrierter Web-IDE für Beispiele und Übungsaufgaben.
Akka
Um Akka-Aktoren in Java zu verwenden, müssen Teile der Akka-Bibliothek in den Classpath eingebunden werden. Die Bibliothek wird über Maven Central bereitgestellt, weshalb der einfachste Weg die Verwendung eines Maven-Projektes mit der passenden Dependency ist:
- GroupId: com.typesafe.akka
- ArtifactId: akka-actor_2.11
- Version: 2.5.6
Hinweis: In der diesjährigen Vorlesung/Übung wird die Akka Version 2.5.x verwendet und nicht mehr Akka 2.4.x. Implementierungen für Akka 2.4.x funktionieren zwar noch immer, die dort verwendete API ist aber inzwischen als deprecated deklariert. Die Übung wurde mit der angegebenen Version der Akka-Bibliothek erstellt, Sie können jedoch auch eine neuere Version verwenden.
Compiler
Ein Verfahren zur systematischen Berechnung von First1 und Follow1 Mengen wird z.B. hier gezeigt (Implementierung in Haskell). Online ausprobieren können Sie z.B.- Eine Implementierung von Hacking Off
- The Context Free Grammar Checker, welcher auch Refaktorisierungen von Grammatiken ermöglicht.
Veranstalter
Ehemalige Tutoren |
---|
Henning Dieterichs |
Tobias Kahlert |
Partner |
---|
Heiko Klare |
Ehemalige Tutoren |
---|
Daniel Krüger |
Roman Langrehr |
Jonas Sauer |
Ehemalige Mitarbeiter |
---|
Dr.-Ing. Sebastian Ullrich |
M.Sc. Simon Bischof |