PředmětyPředměty(verze: 945)
Předmět, akademický rok 2023/2024
   Přihlásit přes CAS
Programování v Haskellu - NPRG068
Anglický název: Programming in Haskell
Zajišťuje: Katedra softwarového inženýrství (32-KSI)
Fakulta: Matematicko-fyzikální fakulta
Platnost: od 2022
Semestr: zimní
E-Kredity: 3
Rozsah, examinace: zimní s.:2/0, Zk [HT]
Počet míst: neomezen
Minimální obsazenost: neomezen
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: nevyučován
Jazyk výuky: čeština
Způsob výuky: prezenční
Způsob výuky: prezenční
Další informace: http://www.ksi.mff.cuni.cz/~kratochvil/haskell/
Garant: RNDr. Miroslav Kratochvíl, Ph.D.
Třída: Informatika Bc.
Kategorizace předmětu: Informatika > Informatika, Aplikační software, Počítačová grafika a geometrie, Databázové systémy, Didaktika informatiky, Diskrétní matematika, Předměty širšího základu, Předměty obecného základu, Počítačová a formální lingvistika, Optimalizace, Programování, Softwarové inženýrství, Teoretická informatika
Výsledky anket   Termíny zkoušek   Rozvrh   Nástěnka   
Anotace -
Poslední úprava: RNDr. Michal Kopecký, Ph.D. (04.06.2018)
Programování v Haskellu zaměřené na řešení praktických problémů -- run-time systém, standardní knihovna, užitečné nástroje.
Cíl předmětu -
Poslední úprava: RNDr. Michal Kopecký, Ph.D. (04.06.2018)

Cílem je navázat na úvod do Haskellu z předmětu Neprocedurální programování a naučit se programovat užitečný a prakticky použitelný software v Haskellu. Součástí předmětu je přehled nejpopulárnějších knihoven a efektivních řešení složitých problémů pomocí funkcionálního programování.

Podmínky zakončení předmětu
Poslední úprava: RNDr. Miroslav Kratochvíl, Ph.D. (08.09.2019)

Studenti v průběhu semestru vyřeší 3 domácí úkoly. Zkouška bude probíhat z větší části formou diskuze o odevzdaných řešeních, případně doplněním nebo opravením chybějících částí. Témata zkoušky budou plně pokryta materiály z přednášky poskytnutými na webu.

Literatura -
Poslední úprava: RNDr. Michal Kopecký, Ph.D. (04.06.2018)

1. Bryan O'Sullivan, Don Stewart, and John Goerzen: Real World Haskell - Code You Can Believe In. O'Reilly, November 2008, ISBN-10: 0596514980, ISBN-13: 978-0596514983. http://book.realworldhaskell.org/read/

2. Learn You A Haskell For Great Good. http://learnyouahaskell.com/

Sylabus -
Poslední úprava: RNDr. Miroslav Kratochvíl, Ph.D. (07.09.2020)
  • Typový systém Haskellu, typové třídy, Hindley-Milnerův systém, Systém Fc
  • Monády, State, Monádové transformery
  • Přehled vnitřního fungování Haskellových programů v GHC: Core, STG, thunky, WHNF, seq, kompilace, modularizace
  • Cabal
  • Standardní knihovna pro IO
  • Standardní typové třídy
  • Standardní kontejnery, Text a ByteString
  • Spojení s UNIXem, optparse
  • Parsovací kombinátory, parsec
  • Pretty printing
  • Paralelizace, STM, paralelní frameworky
  • Serverové aplikace -- Scotty, Yesod, Servant
  • Lens-ová knihovna, Prism, Iso, Traversal
  • Přehled některých líných datových struktur: Finger-konstrukce, lazy fronty, ...
  • Jednoduchý grafický výstup: Gloss, JuicyPixels
  • Testování: HSpec, Quickcheck, Criterion

 
Univerzita Karlova | Informační systém UK