Vyučující
|
-
Kočíř David, Mgr.
-
Krupka Michal, doc. RNDr. Ph.D.
-
Laštovička Jan, Mgr. Ph.D.
|
Obsah předmětu
|
1. základy netypovaného lambda-kalkulu, teorie lambda a její varianty 2. normální formy, redukce, Churchův-Rosserův teorém 3. výpočty v lambda-kalkulu 4. vyčíslitelnost 6. rozhodnutelnost 7. sémantika netypovaného lambda-kalkulu 8. funkcionální datové struktury 9. kombinátorová logika a bezpředmětové programování 10. teorie kategorií pro programátory 11. monády ve funkcionálním programování 12. typové systémy funkcionálních jazyků
|
Studijní aktivity a metody výuky
|
Přednášení, Demonstrace
|
Výstupy z učení
|
Studenti se seznámí se základními pojmy z lambda kalkulu a funkcionálního programování.
1. Znalost Popsat a pochopit principy lambda kalkulu a funkcionálního programování.
|
Předpoklady
|
nespecifikováno
|
Hodnoticí metody a kritéria
|
Ústní zkouška, Písemná zkouška
Aktivní účast v hodině. Plnění zadaných úkolů. Složení ústní (příp. písemné) zkoušky.
|
Doporučená literatura
|
-
Alexander, A. (2017). Functional Programming, Simplified (Scala Edition). CreateSpace Independent Publishing Platform.
-
Barendregt H. P. (1997). The Lambda Calculus: its Syntax and Semantics. 2nd reprint. Elsevier, Amsterdam.
-
Graham, P. (1995). ANSI Common LISP. Prentice Hall.
-
Hutton, G. (2007). Programming in Haskell. Cambridge University Press.
-
Leeuwen, J. van (ed.). (1994). Handbook Of Theoretical Computer Science: Formal Models and Semantics. Volume B, Elsevier.
-
Michaelson, G. (2011). An Introduction to Functional Programming Through Lambda Calculus. Dover Publications.
-
Zlatuška J. (1993). Lambda-kalkul. Vydavatelství MU, Brno.
|