Vyučující
|
|
Obsah předmětu
|
1. syntaxe jazyka, překlad textového vstupu do interní reprezentace 2. sémantika jazyka, rozsahy platnosti symbolů, vazba hodnot na symboly 3. řízení výpočtu, podprogramy 4. objektově orientované programování, interní struktura objektu, metody, polymorfismus 5. typové systémy, typová inference 6. překlad programu, různé interní reprezentace programu 6. běhové prostředí, správa paměti, garbage collectory 7. virtuální stroje 9. základní techniky optimalizace programu 10. funkcionální a logické programovací jazyky
|
Studijní aktivity a metody výuky
|
Monologická (výklad, přednáška, instruktáž), Demonstrace
|
Výstupy z učení
|
Cílem kurzu je seznámit studenty se základními aspekty vývoje programovacích jazyků a s postupy užívanými při jejich vývoji. Po absolvování kurzu by studenti měli mít dostatečné znalosti pro vytvoření vlastního obecného nebo doménově specifického programovacího jazyka.
|
Předpoklady
|
nespecifikováno
|
Hodnoticí metody a kritéria
|
Ústní zkouška, Analýza výkonů studenta
|
Doporučená literatura
|
-
Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman. (2006). Compilers: Principles, Techniques, and Tools.
-
Franklyn Turbak, David Gifford, Mark A. Sheldon. (2008). Design Concepts in Programming Languages.
-
Keith Cooper, Linda Torczon. (2011). Engineering: A Compiler.
-
Melichar, B., Češka M., Ježek K., Richta K. (1999). Konstrukce překladačů..
-
Michael L. Scott. (2015). Programming Language Pragmatics.
|