News
04.05.2018
|
Vortragsthemen zugeteilt & Lösungen Blatt 2Die Vortragsthemen sind zugeteilt und Sie sollten eine Mail mit Ihrem Thema und Ihren zugeteilten Reviews erhalten haben. |
27.04.2018
|
Vortragsthemen VerfügbarDie Liste der Vortragsthemen ist verfügbar. Bitte sendet mir bis (einschließlich) nächsten Donnerstag, den 03.05.2018, eine Mail mit eurer Erst-, Zweit-, und Drittwahl. |
27.04.2018
|
Forum aktivDas Forum wurde aktiviert. Bitte stattet ihm einen Besuch ab, damit ihr bei neuen Beiträgen benachrichtigt werdet. |
27.04.2018
|
Material OnlineÜbungsblatt 2 sowie Beispiellösungen zu Blatt 1 sind online. Insbesondere sind auch alle Aspekte, die wir zu "Auswertungsstrategien in SML" ansprechen wollen inklusive kurzer Erklärungen enthalten. |
16.04.2018
|
Termine OnlineDas Proseminar wird generell Freitags von 14:15 bis 15:45 stattfinden. Die genauen Tage können im Terminkalender nachgeschlagen werden. |
27.03.2018
|
Vorbesprechung am 13.04. 14:15-15:45Die Vorbesprechung zum Proseminar findet am Freitag 13.04 im Raum 528 von 14:15 bis 15:45 statt. Wir bitten um vorherige Anmeldung. Eine Abmeldung nach der Vorbesprechung ist problemlos möglich. |
Kursbeschreibung
In diesem Proseminar wollen wir uns mit "Perlen" der funktionalen Programmierung befassen:
- elegante Algorithmen und effiziente Datenstrukturen in funktionalen Programmiersprachen
- Domain-spezifische Programmbibliotheken (z.B. für Parsing)
- Herleitung von (effizienten) Programmen aus "offensichtlich korrekten", aber ineffizienten Beschreibungen
Das Seminar richtet sich an Studenten ab dem 2. Semester, die die Vorlesung Programmierung 1 erfolgreich besucht haben. Neben den fachlichen Aspekten sollen das Lesen, Zusammenfassen und die Präsentation von Forschungsergebnissen erlernt werden.
Die Vortragsthemen des Proseminars basieren größtenteils auf Forschungsartikeln, die als "Functional Pearls" in der Zeitschrift Journal of Functional Programming oder einer der großen Konferenzen im Bereich Programmiersprachen erschienen sind.
Einige dieser Arbeiten benutzen die Programmiersprache Haskell. Daher werden wir uns in den ersten Treffen etwas näher mit den Besonderheiten von Haskell im Vergleich zu Standard ML beschäftigen:
- bedarfsgesteuerte Auswertung und "unendliche" Datenstrukturen
- Haskell Typsystem, insbesondere Typklassen und monadische Typen
Benotung und Arbeitsaufwand
Um die Leistungspunkte für diesen Kurs zu erhalten, müssen Sie
- in der Lesegruppe und zu allen Vorträgen anwesend (und vorbereitet) sein,
- aktiv an den Diskussionen teilnehmen,
- einen Vortrag halten (20 Minuten, plus Diskussion), basierend auf einem Forschungsartikel sowie weiterführender Literatur, und
- eine schriftliche Ausarbeitung verfassen (8-10 Seiten im EasyChair LaTeX Style, Abgabe als PDF via EasyChair).
- drei schriftliche Bewertungen zu den Abgaben anderer Teilnehmer schreiben.
Die Vortragsfolien sollen spätestens 1 Woche vor dem Vortrag mit dem jeweiligen Betreuer diskutiert werden. Der Abgabetermin für die Ausarbeitung ist 1 Woche nach dem jeweiligen Vortrag. Der Abgabetermin für die Bewertungen ist 2 Wochen nach dem jeweiligen Vortrag.