Proseminar - Perlen der funktionalen Programmierung
- Proseminare
Proseminar - Perlen der funktionalen Programmierung
Veranstalter: | Dr. Andrej Dudenhefner |
---|---|
Typ: | Proseminar |
Modulnummer: | INF-BSc-110 |
Termine: | Online Blockseminar 23.01.2025, 24.01.2025 10-13 Uhr und 14-18 Uhr |
Ausarbeitung: | 5 Seiten als PDF Deutsch oder Englisch Easychair Format |
Aktuelles
Siehe Moodle Raum.
Beschreibung
In diesem Proseminar wollen wir uns mit "Perlen" der funktionalen Programmierung befassen:
- elegante Algorithmen
- effiziente Datenstrukturen
- Domain-spezifische Programmbibliotheken (z.B. für Parsing)
- Herleitung von (effizienten) Programmen aus korrekten, aber ineffizienten Beschreibungen
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 beschäftigen:
bedarfsgesteuerte Auswertung und "unendliche" Datenstrukturen Haskell Typsystem, Typklassen und monadische Typen.
Leistung
- Benoteter Vortrag (20 Minuten Votragszeit + 5 Minuten Rückfragen)
- Schriftliche, benotete Ausarbeitung (5 Seiten)
- Teilnahme an den Vorträgen von anderen Teilnehmenden
Die Abschlussnote bewertet die Qualität der Diskussionsbeiträge, den Vortrag und die Ausarbeitung.
Präsentationstechniken
Das Element Präsentationstechniken (1 CP) des Moduls Proseminar (INF-BSc-110) findet in Präsenz statt und umfasst folgende Termine.
Zeit | Di. 14:15 - 15:45 |
Ort | OH12 R1.054 |
Termine | 15.10., 22.10., 05.11., 12.11. |
Beipiel | Eigenheiten der kochschen Schneeflocke, LaTeX Quellcode |
Themenliste
- A Play on Regular Expressions
- A Poor Man's Concurrency Monad
- A Pretty But Not Greedy Printer
- A Program to Solve Sudoku
- A Short Cut to Deforestation
- All Sorts of Permutations
- Composing Fractals
- Data Types a la Carte
- Enumerating the Rationals
- Every Bit Counts
- Explaining Binomial Heaps
- Fun with Semirings
- Inverting the Burrows–Wheeler Transform
- Lazy Wheel Sieves and Spirals of Primes
- Monadic Parsing in Haskell
- Parsing Permutation Phrases
- Pickler Combinators
- The Genuine Sieve of Eratosthenes
- Two Can Keep a Secret If One of Them Uses Haskell
- Typed quote_antiquote or Compile-time Parsing
- I am not a Number - I am a Free Variable
- HasChor Functional Choreographic Programming for All
- On Generating Unique Names
- Implicit Configurations - or Type Classes Reflect the Values of Types
- Streams and Unique Fixed Points
Alternativ zu den oben genannten Themen kann (nach Absprache) eine Veröffentlichung der Zeitschrift Journal of Functional Programming im Bereich Functional Pearls behandelt werden.