Detail předmětu

Výstavba překladačů (v angličtině)

VYPa Ak. rok 2025/2026 zimní semestr 5 kreditů

Aktuální akademický rok

Předmět diskutuje pokročilá a doplňující témata týkající se konstrukce překladačů, která svou náročností překračují bakalářskou úroveň. Tato diskuse se bude soustředit na následující tři okruhy: (I) Pokročilá témata konstrukce klasických kompilátorů: konstrukce LR rozkladových tabulek, precedenční analýza vyššího řádu, důležité metody syntaktické analýzy s návraty, pokročilé metody optimalizace. (II) Principy paralelních kompilátorů: struktura paralelního překladače, fundamentální metody paralelní syntaktické analýzy, základní modely pro paralelní překlad. (III) Formální překladové modely a jejich vlastnosti: převodníky, překladové gramatiky, vlastnosti syntaxí řízených překladů (charakterizující jazyky, nekonečná hierarchie překladů apod.), vlastnosti formálních jazyků relevantní pro překladače, moderní formální modely pro překlad.

Odkazy

Proč je předmět vyučován

V předmětu VYPa se na magisterské úrovni vyučuje tvorba překladačů, což vyžaduje správnou kombinaci teoretických znalostí i praktických dovedností. Z teorie představuje matematické modely jako automaty a gramatiky, které stojí v pozadí překladu a jeho fází. Na základě těchto modelů jsou potom co nejpřístupnějším způsobem vyučovány další koncepty, metody a techniky používané při návrhu překladačů.

Z praktického pohledu jsou vyučovány vybrané techniky implementace překladačů. U těchto technik je krok za krokem probírána jejich implementace. Dále je prezentována řada příkladů a programů, které ukazují aplikace různých algoritmů pro překlad.

Po absolvování kurzu by měl být student schopen chápat proces překladu, tvorby překladače a měl by být schopen se dále v dané oblasti zdokonalovat s využitím pokročilé literatury.

Garant předmětu

Koordinátor předmětu

Jazyk výuky

anglicky

Zakončení

zkouška (písemná)

Rozsah

  • 39 hod. přednášky
  • 13 hod. projekty

Bodové hodnocení

  • 55 bodů závěrečná zkouška (písemná část)
  • 15 bodů půlsemestrální test (písemná část)
  • 30 bodů projekty

Zajišťuje ústav

Přednášející

Cvičící

Cíle předmětu

Detailně objasnit konstrukci překladačů, včetně moderních paralelních kompilátorů. Podrobně se seznámit s formálními překladovými modely a jejich vlastnostmi.
Schopnost sestrojit náročný překladač, včetně moderního paralelního kompilátoru. Hluboká obeznámenost s formálními překladovými modely a jejich vlastnostmi.
Obecná znalost formálních modelů pro překlad a jejich aplikace.

Požadované prerekvizitní znalosti a dovednosti

Základní znalost diskrétní matematiky.

Osnova přednášek

  1. Úvod: zopakování struktury překladače.
  2. Deterministická syntaktická analýza zdola nahoru: konstrukce LR rozkladových tabulek.
  3. Deterministická syntaktická analýza zdola nahoru: precedenční analýza vyššího řádu.
  4. Obecná syntaktická analýza: důležité metody syntaktické analýzy s návraty.
  5. Pokročilé metody optimalizace.
  6. Paralelní kompilátory: struktura paralelního překladače.
  7. Paralelní syntaktická analýza: principy.
  8. Deterministická paralelní syntaktická analýza shora dolů.
  9. Deterministická paralelní syntaktická analýza zdola nahoru.
  10. Generování paralelního kódu.
  11. Moderní formální prostředky pro specifikaci jazyka: řízené a paralelní modely.
  12. Formální prostředky pro specifikaci překladu: převodníky a překladové gramatiky.
  13. Očekávané budoucí trendy, shrnutí, závěr.

Osnova ostatní - projekty, práce

  1. Vytvoření pokročilého kompilátoru.
  2. Příprava a prezentace vybraného tématu o kompilátorech.

Průběžná kontrola studia

  • Půlsemestrální písemná zkouška - 15 bodů
  • Hodnocené projekt(y) - 30 bodů
  • Závěrečná písemná zkouška - 55 bodů


Pokud v průběhu semestru student onemocní nebo se vyskytne jiná překážka ve studiu, je třeba tuto překážku řádně ohlásit a doložit. Pak k ní lze přihlédnout a přizpůsobit jí hodnocení:

  • U projektu může student požádat příslušného učitele o přiměřené prodloužení termínu pro odevzdání.
  • Pokud se student nemohl zúčastnit půlsemestrální zkoušky, může přednášejícího požádat, aby body za půlsemestrální zkoušku byly odvozeny od bodového zisku u prvního termínu zkoušky, kterého se zúčastní.
  • Pokud se student nemůže zúčastnit obhajoby projektu a ostatní členové týmu s tím vysloví souhlas, může získat za obhajobu stejný počet bodů jako na obhajobě přítomní členové týmu.

Zařazení předmětu ve studijních plánech

Nahoru