Osnova přednášek
Seznámení se s jazykem Haskell, úvod do funkcionálního programování.
1. Úvod – platforma Haskell, interpret GHCI, Jednoduché funkce využití rekurze
2. Funkce – řešení složitějších problému, základní knihovny, problematika typových tříd
3. Seznamy a uživatelské datové typy – základní způsob práce, generátory seznamů, funkcionální způsob řešení problémů.
Nástroje pro funkcionální programování
4. Nástroje pro správu projektů a knihoven (Stack, Cabal) a podpůrné nástroje pro vývoj (např. debugger).
5. Testování
Pokročilé aspekty programování v jazyce Haskell
6. Programování s akcemi – teoretické aspekty, monády, příklady (monáda ST).
7. Vstup a výstup, řešení chyb.
Vybrané knihovny jazyka Haskell
8. Zpracování vybraných formátu dat (JSON, XML), překlad vstupu.
9. Paralelní programování, práce se sítí, webové REST api.
10. Použití databáze.
11. GUI v jazyce Haskell
Webové GUI v jazyce ELM.
12. Elm – základní komponenty.
13. ELM – vybrané technologie, aplikace stylů.
14. Elm – propojení s backend v jazyce Haskell.
Cvičení budou korespondovat s přednáškami, předpokládá se, že všechna cvičení budou na počítačových učebnách.
Seznámení se s jazykem Haskell, úvod do funkcionálního programování.
1. Úvod – platforma Haskell, interpret GHCI, Jednoduché funkce využití rekurze
2. Funkce – řešení složitějších problému, základní knihovny, problematika typových tříd
3. Seznamy a uživatelské datové typy – základní způsob práce, generátory seznamů, funkcionální způsob řešení problémů.
Nástroje pro funkcionální programování
4. Nástroje pro správu projektů a knihoven (Stack, Cabal) a podpůrné nástroje pro vývoj (např. debugger).
5. Testování
Pokročilé aspekty programování v jazyce Haskell
6. Programování s akcemi – teoretické aspekty, monády, příklady (monáda ST).
7. Vstup a výstup, řešení chyb.
Vybrané knihovny jazyka Haskell
8. Zpracování vybraných formátu dat (JSON, XML), překlad vstupu.
9. Paralelní programování, práce se sítí, webové REST api.
10. Použití databáze.
11. GUI v jazyce Haskell
Webové GUI v jazyce ELM.
12. Elm – základní komponenty.
13. ELM – vybrané technologie, aplikace stylů.
14. Elm – propojení s backend v jazyce Haskell.
Cvičení budou korespondovat s přednáškami, předpokládá se, že všechna cvičení budou na počítačových učebnách.