Detail předmětu
Formální jazyky a překladače (v angličtině)
FIT-IFJeAk. rok: 2024/2025
Kurs diskutuje formální jazyky a jejich modely. Na bázi těchto modelu objasňuje konstrukci překladačů. Výklad je organizován následovně: (I) Základní pojmy: formální jazyky a jejich modely, gramatiky, automaty; překlady. (II) Regulární jazyky a lexikální analýza: regulární jazyky a výrazy, konečné automaty, lexikální analyzátory; tabulka symbolu. (III) Bezkontextové jazyky a syntaktická analýza: bezkontextové jazyky a gramatiky, zásobníkové automaty, syntaktická analýza; deterministická syntaktická analýza, LL gramatiky, deterministická analýza shora dolů (rekurzivní sestup); princip deterministické analýzy zdola nahoru. (IV) Sémantická analýza a generováni kódu: sémantická analýza, generováni vnitřní formy programu, optimalizace, generováni cílového kódu.
Odkazy
Podmínky zápočtu
Udělení zápočtu je podmíněno získáním min. 20 bodů v průběhu semestru, z nichž nejméně 5 bodů je za projekt.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Nabízen zahraničním studentům
Vstupní znalosti
Pravidla hodnocení a ukončení předmětu
Učební cíle
Základní obeznámenost s formálními jazyky a jejich modely. Schopnost sestrojit překladač.
Prerekvizity a korekvizity
- doporučená prerekvizita
Diskrétní matematika
Základní literatura
Doporučená literatura
Nystrom, R.: Crafting Interpreters. Genever Benning, 2021, Available online http://craftinginterpreters.com. (EN)
Parsons, T. W.: Introduction to Compiler Construction. Freeman, New York, 1992. (EN)
Elearning
Zařazení předmětu ve studijních plánech
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
- Základy formálních jazyků: abeceda, řetězce, jazyky.
- Úvod do překladačů: struktura překladače.
- Regulární jazyky a jejich modely: regulární výrazy, konečné automaty.
- Varianty konečných automatů.
- Lexikální analýza: lexikální analyzátor, tabulka symbolů.
- Bezkontextové jazyky a jejich modely: bezkontextové gramatiky, zásobníkové automaty.
- Zásobníkové automaty a obecný překlad.
- Deterministická syntaktická analýza shora dolů: rekurzívní sestup.
- Deterministická syntaktická analýza zdola nahoru: jednoduchá precedenční analýza.
- Chomského hierarchie a korespondující modely. Závěrečné poznámky a shrnutí.
Elearning