HOME | ENGLISH | IMPRESSUM | KIT

Programmierparadigmen

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 voraussichtlich am Freitag, den 26.10.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 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
  • am Montag, den 05. Februar, ausschließlich das Thema Parallelprogrammierung, und
  • am Dienstag, den 06. Februar, ausschließlich das Thema Compiler/Bytecode
behandelt. Sie dürfen und sollten daher in dieser Woche zwei Übungstermine wahrnehmen.
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:
  • Tobias Kahlert: Freitag, den 27.10.2016, 09:45-11:15 Uhr, Raum 236 Informatikgebäude (50.34)
  • Tobias Kahlert: Freitag, den 27.10.2016, 11:30-13:00 Uhr, Raum -119 Informatikgebäude (50.34)
  • sowie alle Montagstermine

Inhalt

In der Vorlesung Programmierparadigmen lernen die Teilnehmer nichtimperative Programmierung und ihre Anwendungsgebiete kennen. Im Einzelnen werden behandelt:

  1. Funktionale Programmierung - rekursive Funktionen und Datentypen, Funktionen höherer Ordnung, Kombinatoren, lazy evaluation, Lambda-Kalkül, Typsysteme, Anwendungsbeispiele.
  2. Logische Programmierung - Terme, Hornklauseln, Unifikation, Resolution, regelbasierte Programmierung, constraint logic programming, Anwendungen.
  3. Parallelprogrammierung - message passing, verteilte Software, Aktorkonzept, Anwendungsbeispiele.
  4. Elementare Grundlagen des Compilerbaus.

Es werden folgende Programmiersprachen (teils nur kurz) vorgestellt: Haskell, Prolog, C++, X10, Java Byte Code.

Das in dieser Vorlesung vermittelte Wissen wird in den zur Vorlesung gehörenden Übungen vertieft.

Klausuren

PrüfungszeitraumTagBeginnEndeOrt
WS 2017/18Donnerstag, 05.04.201811:00 Uhr13:00 Uhr Hörsaal am Forum (Audimax), Gebäude 30.95
Gerthsen-Hörsaal Gebäude 30.21
SS 2018Mittwoch, 26.09.201710:00 Uhr12:00 UhrHörsaal am Forum (Audimax), Gebäude 30.95

Zuteilung Klausur WS2017/18

MatrikelnummerOrt
0000000 bis 1869999Hörsaal am Forum (Audimax), Gebäude 30.95
1870000 bis 9999999Gerthsen-Hörsaal Gebäude 30.21

in Haskell-Notation:

  hoersaalZuordnung stud
    | matr stud <= 1869999 = Audimax
    | matr stud >= 1870000 = Gerthsen

Klausur-Formalitäten

Die Klausur hat einen Umfang von 120 Minuten. Zur Teilnahme an der Klausur ist neben dem Studierendenausweis ein gültiger, amtlicher Lichtbildausweis (Personalausweis, Führerschein, Reisepass) mitzubringen!

Zugelassene Hilfsmittel

Erlaubte Hilfsmittel für die Klausur sind alle Quellen in Papierform, insbesondere

  • Vorlesungsfolien der Veranstaltung Programmierparadigmen
  • Übungszettel und Beispiellösungen der Veranstaltung Programmierparadigmen
  • Bücher, Ausdrucke und beliebige eigenen Aufzeichnungen

Jegliche Elektronik (Mobiltelefon, Notebook, etc.) ist verboten!

Vorlesung

Die Vorlesung hat den Umfang von 3 SWS. Die wöchentlichen Termine finden während folgender Zeiträume statt:

Tag Beginn Ende Ort
Mittwochs14:0015:30Hertz-Hörsaal, Raum 126 (Geb. 10.11)
Freitags 14:0015:30Hertz-Hörsaal, Raum 126 (Geb. 10.11)
Die erste Vorlesung findet am 18.10.2017 statt.

Termine

Bitte achten Sie auf Änderungen zu diesem vorläufigen Terminplan, die hier und in der Vorlesung bekannt gegeben werden.
TagDatumBeginnEndeOrt
Mittwoch 18.10.201714:0015:30Hertz-Hörsaal
Freitag 20.10.201714:0015:30Hertz-Hörsaal
Mittwoch 25.10.201714:0015:30Hertz-Hörsaal
-
-
Freitag 03.11.201714:0015:30Hertz-Hörsaal
Mittwoch 08.11.201714:0015:30Hertz-Hörsaal
Freitag 10.11.201714:0015:30Hertz-Hörsaal
Mittwoch 15.11.201714:0015:30Hertz-Hörsaal
Freitag 17.11.201714:0015:30Hertz-Hörsaal
Mittwoch 22.11.201714:0015:30Hertz-Hörsaal
-
Mittwoch 29.11.201714:0015:30Hertz-Hörsaal
Freitag 01.12.201714:0015:30Hertz-Hörsaal
Mittwoch 06.12.201714:0015:30Hertz-Hörsaal
Freitag 08.12.201714:0015:30Hertz-Hörsaal
Mittwoch 13.12.201714:0015:30Hertz-Hörsaal
Freitag 15.12.201714:0015:30Hertz-Hörsaal
-
-
Weihnachten
-
Mittwoch 10.01.201814:0015:30Hertz-Hörsaal
Freitag 12.01.201814:0015:30Hertz-Hörsaal
Mittwoch 17.01.201814:0015:30Hertz-Hörsaal
Freitag 19.01.201814:0015:30Hertz-Hörsaal
Mittwoch 24.01.201814:0015:30Hertz-Hörsaal
Freitag 26.01.201814:0015:30Hertz-Hörsaal
Mittwoch 31.01.201814:0015:30Hertz-Hörsaal
-
Mittwoch 07.02.201814:0015:30Hertz-Hörsaal
Freitag 09.02.201814:0015:30Hertz-Hörsaal

Unterlagen

Das Vorlesungsmaterial 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. Vorlesungsfolien, Musterlösungen 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.

Vorlesungsfolien

StandThemaPDF
16.10.2017OrganisatorischesDownload
23.10.2017Funktionale Programmierung: Einführung, Listen Download
26.10.2017Funktionale Programmierung: Funktionen höherer Ordnung, Kombinatoren Download
24.10.2017Funktionale Programmierung: Lazy Evaluation Download
08.11.2017Funktionale Programmierung: Typen, Beispiele fkt. Programmierung Download
06.11.2017Funktionale Programmierung: Algebraische Datentypen & AnwendungenDownload
06.11.2017Funktionale Programmierung: Typklassen, QuickCheckDownload
08.11.2017Funktionale Programmierung: Zusatzfolien MonadenDownload
13.11.2017Theoretische Grundlagen: Der untypisierte Lambda-Kalkül Download
13.11.2017Theoretische Grundlagen: Regelsysteme, TypsystemeDownload
20.11.2017Theoretische Grundlagen: PolymorphieDownload
01.12.2017Logische Programmierung: Einführung, Backtracking Download
29.11.2017Logische Programmierung: Arithmetik und Listen, CutsDownload
04.12.2017Logische Programmierung: BeispielprogrammeDownload
04.12.2017Logische Programmierung: SpracherweiterungenDownload
06.12.2017Logische Programmierung: Unifikation und ResolutionDownload
06.12.2017Logische Programmierung: Constraint Logic ProgrammingDownload
11.12.2017TypinferenzDownload
08.01.2018Parallelprogrammierung: Grundlagen Download
25.01.2018Parallelprogrammierung: C/C++-Wiederholung Download
25.01.2018Parallelprogrammierung: MPI Download
18.01.2018Parallelprogrammierung: Java Basic Download
22.01.2018Parallelprogrammierung: Java Advanced und Aktormodell Download
29.01.2018Design by Contract Download
24.01.2018Compiler: Einführung Download
24.01.2018Compiler: Lexikalische und syntaktische Analyse Download
29.01.2018Compiler: Semantische Analyse Download
31.01.2018Compiler: Java-Bytecode und Codeerzeugung Download
07.02.2018Werbung: Veranstaltungen im SS2018 Download
07.02.2018FragestundeDownload
Der Foliensatz (Snelting-Teil) zum Download: [PDF] [PDF4].
Der Foliensatz (Snelting-Teil) als Druckversion zum Download: [PDF] [PDF4]
Bemerkung: Bei der Druckversion kann es zu Darstellungsfehlern kommen, weil nicht alle Animationen sinnvoll zu einer Folie zusammengefasst werden konnten!

Sonstiges

StandThemaDatei
14.12.2017Beispielimplementierungen Typinferenz (Haskell, Prolog) und Unifikation (Union/Find und Robinson, Haskell)Download
28.01.2017Beispielcompiler für Simple-SpracheDownload
Lambda-Kalkül mit Krokodilen als Android-App

Altklausuren

Klausuren mit Beispiellösungen.
StandThemaPDF
Sommersemester 2014 Klausur vom 23. September 2014 Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2014/2015 Klausur vom 9. April 2015 Download (ohne Lösungen)
Download (mit Lösungen)
Sommersemester 2015 Klausur vom 21. September 2015 Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2015/2016 Klausur vom 7. April 2016 Download (ohne Lösungen)
Download (mit Lösungen)
Sommersemester 2016 Klausur vom 22. September 2016 Download (ohne Lösungen)
Download (mit Lösungen)
Sommersemester 2017 Klausur vom 25. September 2017 Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2017/2018 Klausur vom 5. April 2018 Download (ohne Lösungen)
Download (mit Lösungen)
Sommersemester 2018 Klausur vom 26. September 2018 Download (ohne Lösungen)
Download (mit Lösungen)

Kneipenquiz

Kneipenquiz-Aufgaben aus dem Bereich KIT, Programmierparadigmen und Programmiersprachen.
EditionThemaPDF
Wintersemester 2011/2012 Programmiersprachen und Algorithmen Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2012/2013 Historische Veröffentlichungen der Informatik Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2013/2014 Informatik am KIT - Dissertationen Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2014/2015 Quellcode in Film und Fernsehen Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2015/2016 Science Fiction Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2016/2017 Um die Ecke-Rätsel, Zitate Download (ohne Lösungen)
Download (mit Lösungen)
Wintersemester 2017/2018 Ahnengallerie Download (ohne Lösungen)
Download (mit Lösungen)

Veranstalter

Lehrstuhlinhaber
Prof. Gregor Snelting
Wissenschaftliche Mitarbeiter
Simon Bischof
Sebastian Ullrich