Links und Funktionen
Sprachumschaltung

Navigationspfad
Sie sind hier: Startseite / Lehre / WS 2021/22 / Fortgeschrittene Funktionale Programmierung


Inhaltsbereich

Fortgeschrittene Funktionale Programmierung

Vorlesung, 3-std., Sabel; Übungen 2-std., Sabel

 

Aktuelles

  • Präsenzveranstaltung mit Digitalangebot

    • Geplant ist, die Veranstaltung in Präsenz durchzuführen, aber auch die digitale Teilnahme zu ermöglichen. Daher ist Teilnahme in Präsenz unter Beachtung der aktuellen Regelungen der LMU (Hinweise zu Studium und Lehre und Allgemeine Informationen und Hinweise) möglich:
      • Die Vorlesung wird als Präsenzveranstaltung angeboten (Do 16-18 und Fr 10-12, wobei nicht alle Donnerstagstermine genutzt werden, sondern die Hälfte, da die Vorlesung 3-stündig ist).
      • Die Übung Do 12-14 wird als Präsenzveranstaltung angeboten
    • Für die digitale / online Teilnahme:
      • Als Ersatz für die Vorlesung können die im Sommersemester 2020 erstellten ScreenCasts verwendet werden (Links zu Playlisten werden im Lauf der Veranstaltung bereit gestellt).
      • Die Übung Di 16-18 wird als Onlineveranstaltung via Zoom angeboten.
    • Als Material werden Folien und ein Skript zur Verfügung gestellt. Zur Kommunikation bietet sich der Zulip-Stream TCS-21W-FFP im Chat des Instituts für Informatik an.
  • Zur Teilnahme ist eine Anmeldung per Uni2work erforderlich.


Inhalt

Aufbauend auf die Einführung in funktionale Programmierung im Rahmen der LV "Programmierung und Modellierung" (Semester 2), behandelt die Veranstaltung vertiefende Themen der Funktionalen Programmierung und Programmiersprachen. Einerseits werden theoretische Grundlagen behandelt (z.B. Syntax, Semantik und Typisierung von (Kern-)sprachen funktionaler Programmiersprachen) und andererseits werden fortgeschrittene Techniken der funktionaler Programmierung behandelt (z.B. Behandlung von I/O und Effekten, Nebenläufige und Parallele Programme, Testen und Verifikation, Entwicklung ereignisgesteuerter Anwendungen wie Webapplikationen und graphischer Benutzeroberflächen).
In der Veranstaltung wird die Sprache Haskell eingesetzt; solide Vorkenntnisse in einer anderen funktionalen Sprachen reichen ebenfalls aus.


Organisation

  • Umfang: 3+2 Semesterwochenstunden (6 ECTS für Modul "Vertiefende Themen der Informatik")
  • Vorlesung: Prof. Dr. David Sabel
  • Übung: Prof. Dr. David Sabel und Henrik Wachowitz
  • Prüfung: Die Prüfungsmodalitäten sind im Uni2work veröffentlicht.

Zeit und Ort

VeranstaltungZeitOrtBeginn
Vorlesung Do 16-18 M 110 (Hauptgebäude, Geschwister-Scholl-Pl-1.) 21.10.21
Vorlesung Fr 10-12 M 110 (Hauptgebäude, Geschwister-Scholl-Pl-1.) 22.10.21
Übung Di 16-18 Online via Zoom (Link für angemeldete Teilnehmer im uni2work) 26.10.21
Übung Do 12-14 D 105 (Richard-Wagner-Str. 10) 28.10.21

Die Vorlesungstermine werden nicht alle genutzt (da die Vorlesung 3-stündig ist).

Die Planung der genutzten Termine ist:

Vorlesungsnr.DatumInhalt
1 Do 21.10.21 Organisatorisches, Einleitung
2 Fr 22.10.21
3 Fr 29.10.21
4 Do 04.11.21
5 Fr 05.11.21
6 Fr 12.11.21
7 Do 18.11.21
8 Fr 19.11.21
9 Fr 26.11.21
10 Do 2.12.21
11 Fr 3.12.21
12 Fr 10.12.21
13 Do 16.12.21
14 Fr 17.12.21
15 Fr 07.01.22
16 Do 13.01.22
17 Fr 14.01.22
18 Fr 21.01.22
19 Do 27.01.22
20 Fr 28.01.22
21 Fr 04.02.22
22 Do 10.02.22
23 Fr 11.02.22

 

 


Material

Vorlesungsmaterial und Übungsblätter erhalten Sie per Uni2work.


Literatur

  • Bird, R. Thinking Functionally with Haskell, Cambridge University Press, 2014
  • Bird, R. Introduction to Functional Programming using Haskell. Prentice Hall PTR, 2 edition, 1998.
  • Davie, A. J. T. An introduction to functional programming systems using Haskell. Cambridge University Press, New York, NY, USA, 1992.
  • Thompson, S. Haskell: The Craft of Functional Programming. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1999.
  • Hutton, G. Programming in Haskell. Cambridge University Press, 2007.
  • Chakravarty, M. & Keller, G. Einführung in die Programmierung mit Haskell. Pearson Studium, 2004
  • Bird, R. & Wadler, P. Introduction to Functional Programming. Prentice-Hall International Series in Computer Science. Prentice-Hall International, Upper, Saddle River, NJ, USA, 1988.
  • Lipovaca, M. Learn You a Haskell for Great Good! A Beginner’s Guide, No Starch Press, 2011.
  • Marlow, S. Parallel and Concurrent Programming in Haskell, O'Reilly, 2013,
  • O’Sullivan, B., Goerzen, J., & Stewart, D. Real World Haskell.O’Reilly Media, Inc, 2008.
  • Pepper, P.. Funktionale Programmierung in OPAL, ML, HASKELL und GOFER. Springer-Lehrbuch, 1998. ISBN 3-540-64541-1.
  • Pepper, P. & Hofstedt, P. Funktionale Programmierung – Weiterführende Konzepte und Techniken. Springer-Lehrbuch. ISBN 3-540-20959-X, 2006.
  • Peyton Jones, S. L. The Implementation of Functional Programming Languages. Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 1987.
  • Snoyman, M. Developing Web Applications with Haskell and Yesod, O’Reilly, 2012.
  • Barendregt, H. P. The Lambda Calculus. Its Syntax and Semantics. North-Holland, Amsterdam, New York, 1984.
  • Hankin, C. An introduction to lambda calculi for computer scientists. Number 2 in Texts in Computing. King’s College Publications, London, UK, 2004.
  • Pierce, B. C., Types and programming languages. MIT Press, Cambridge, MA, USA, 2002.
  • C. Allen, J. Moronuki, Haskell Programming from first principles - Pure functional programming without fear or frustation, Lorepub LLC, 2019,
  • S. Maguire. Thinking with Types - Type-Level Programming in Haskell, Leanpub, 2018
  • C. Penner. Optics By Example - Functional lenses in Haskell, Leanpub, 2020

Weitere Informationen

 

Artikelaktionen


Funktionsleiste