FPF:UIINP28 Překladače - Informace o předmětu
UIINP28 Překladače
Filozoficko-přírodovědecká fakulta v Opavězima 2023
- Rozsah
- 2/2/0. 6 kr. Ukončení: zk.
- Vyučující
- RNDr. Šárka Vavrečková, Ph.D. (přednášející)
RNDr. Šárka Vavrečková, Ph.D. (cvičící) - Garance
- RNDr. Šárka Vavrečková, Ph.D.
Ústav informatiky – Filozoficko-přírodovědecká fakulta v Opavě - Rozvrh
- Čt 8:05–9:40 LEI
- Rozvrh seminárních/paralelních skupin:
- Předpoklady
- Algoritmy a programování II
Teorie jazyků a automatů I - Omezení zápisu do předmětu
- Předmět je nabízen i studentům mimo mateřské obory.
- Mateřské obory/plány
- Informatika (program FPF, INFOR-bpk)
- Cíle předmětu
- Předmět Překladače je pojat jako praktické využití teoretické informatiky v programování se zaměřením na překlad (textových) řetězců včetně souborů. Předpokládají se znalosti teoretické informatiky a programování. Studenti se učí základní postupy reprezentace lexikální, syntaktické a sémantické struktury programovacího jazyka pomocí některých typů formálních gramatik a postupy jejich implementace. Součástí předmětu je také naprogramování vlastního interpretačního překladače libovolného jazyka zahrnujícího práci s matematickými výrazy.
- Výstupy z učení
- Student bude po absolvování předmětu schopen:
- popsat základní postupy vytvoření lexikální a syntaktické struktury programovacího jazyka pomocí některých typů formálních gramatik,
- navrhnout lexikální a syntaktický analyzátor podle těchto struktur a přidat sémantickou analýzu,
- naprogramovat svůj vlastní jednoduchý překladač. - Osnova
- 1. Struktura překladače.
- 2. Lexikální analýza. Metody lexikální analýzy a jejich implementace.
- 3.–5. Syntaktická analýza, LL(1), silné LL(k) gramatiky, jejich využití a implementace.
- 6.–7. Syntaktická analýza s využitím silných LR(k) gramatik, implementace.
- 8. Sémantická analýza. Tabulka symbolů a její implementace. Intermediální kód.
- 9.–10. Syntaxí řízený překlad.
- 11.–12. Atributovaný překlad a jeho iplementace.
- 13. Programování pokročilejších jazykových konstrukcí.
- Literatura
- povinná literatura
- VAVREČKOVÁ, Šárka. Programování překladačů (rozpracovaná nová verze). Slezská univerzita v Opavě, 2023.
- VAVREČKOVÁ, Š. Programování překladačů. Opava: Slezská univerzita v Opavě, 2008. ISBN 978-80-7248-493-5. info
- doporučená literatura
- THAIN, Douglas. Introduction to Compilers and Language Design. Second edition. University of Notre Dame, 2020, revision date: 2023. ISBN 979-8-655-18026-0. Dostupné na: https://www3.nd.edu/~dthain/compilerbook/compilerbook.pdf
- PRATA, Stephen. Mistrovství v C++. Computer Press, 2013, dotisk 2023. ISBN 978-80-251-3828-1.
- COOPER, Keith D. a Linda TORCZON. Engineering a compiler. 2nd ed. Boston: Elsevier/Morgan Kaufmann, 2012. ISBN 978-0-12-088478-0. info
- MOZGOVOY, Maxim. Algorithms, languages, automata, and compilers: a practical approach. Sudbury, Mass.: Jones and Bartlett Publishers, 2010. ISBN 978-0-7637-7627-5. info
- Výukové metody
- Přednáška s aktivizací
Přednáška s diskusí
Cvičení
Projekt - Metody hodnocení
- Zápočet:
- Povinná účast na cvičeních min. 75 %.
- Dvě písemky, úspěšnost min. 50 % z každé.
- Naprogramování lexikální analýzy jednoduchého překladače.
Zkouška:
- Písemná, seznam otázek je na webu předmětu.
- Naprogramování vlastního interpretačního překladače ve zvoleném programovacím jazyce. - Další komentáře
- Studijní materiály
Předmět je dovoleno ukončit i mimo zkouškové období.
- Statistika zápisu (zima 2023, nejnovější)
- Permalink: https://is.slu.cz/predmet/fpf/zima2023/UIINP28