Seminarium: Zaawansowane programowanie funkcyjne

Język wykładowy Angielski
Semestr Zimowy
Status Wycofana z oferty
Opiekun Dariusz Biernacki
Liczba godzin 30 (sem.)
Rodzaj Seminarium
ECTS 3
Polecany dla I roku Nie
Egzamin Nie
Tagi JP (języki programowania i logika)

Opis przedmiotu:

Tematem seminarium jest przegląd zaawansowanych cech języków funkcyjnych takich jak Ocaml, Haskell oraz Agda, a także technik programowania wykorzystujących te cechy. Seminarium może być potraktowane jako uzupełnienie kursu Haskella prezentowanego w ramach przedmiotu Metody Programowania, a także rozszerzenie przedmiotu Programowanie Funkcyjne. Przedstawione zostaną takie zagadnienia jak m. in.:

  1. Polimorfizm parametryczny (Theorems for free!)
  2. Typy egzystencjalne
  3. Polimorfizm wyższego stopnia
  4. Uogólnione algebraiczne typy danych (GADT’s)
  5. Embedded domain-specific languages
  6. Programowanie wieloetapowe (ewaluacja częściowa, generowanie kodu)
  7. Interpretery definiujące
  8. Kontynuacje
  9. Programowanie reaktywne
  10. Typy zależne

Literatura do przedmiotu obejmować będzie wybrane artykuły naukowe z dziedziny programowania funkcyjnego.