Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2019/2020

Programovací jazyky a překladače

Předmět není vypsán Nerozvrhuje se
Kód Zakončení Kredity Rozsah Jazyk výuky
BIK-PJP Z,ZK 5 13KP+2KC česky
Přednášející:
Cvičící:
Předmět zajišťuje:
katedra teoretické informatiky
Anotace:

Studenti budou umět základní metody implementace běžných programovacích jazyků. Získají zkušenost s návrhem a implementací překladu jednotlivých konstruktů programovacích jazyků (datové typy, podprogramy, apod). Naučí se formálně specifikovat překlad textu, který vyhovuje určité syntaxi, do cílové formy a na základě této specifikace napsat překladač. Překladačem se zde rozumí nejen překladač programovacího jazyka, ale jakýkoliv jiný program analyzující a zpracovávající text zapsaný v jazyku, který je dán LL(1) gramatikou.

Požadavky:
Osnova přednášek:

1. Přehled programovacích jazyků, programovací paradigmata. Struktura překladače, virtuální počítač. Návrh a realizace lexikálního analyzátoru.

2. LL(1) gramatiky, transformace BG na LL(1). Realizace syntaktické analýzy rekurzívním sestupem.

3. Překladové gramatiky a zásobníkové překladové automaty. Atributové překladové gramatiky.

4. Vnitřní formy programu, překlad a vyhodnocení výrazů. Překlad do jazyka zásobníkového počítače.

5. Překlad do syntaktického stromu. Specifikace a implementace datových typů.

6. Překlad typických jazykových konstrukcí. Specifikace a implementace podprogramů.

7. Specifikace a implementace datových abstrakcí.

Osnova cvičení:

1. Návrh a realizace lexikálního analyzátoru. Realizace syntaktické analýzy rekurzívním sestupem. Atributové překladové gramatiky. Překlad do jazyka zásobníkového počítače. Překlad do syntaktického stromu. Konzultace k domácí práci.

Cíle studia:

Předmět obsahuje přehled obecných rysů programovacích jazyků a výklad základních metod jejich implementace. Návrh a programová realizace jednotlivých částí překladače jsou podloženy základní teorií gramatik a automatů. Pro ilustraci metod je zaveden jednoduchý programovací jazyk a navržen a realizován překladač. Dále jsou probrány základní metody implementace datových typů, podprogramů a datových abstrakcí.

Studijní materiály:

Müller, K. ''Programovací jazyky''. Praha: ČVUT, 2002. ISBN 80-01-02458-X.

Nešvera, Š. ''Programovací jazyky: cvičení''. Praha: ČVUT, 2002. ISBN 80-01-02522-5.

Grune, D., Bal, H., Jacobs, C., Langendoen, K. ''Modern Compiler Design''. Wiley, 2000. ISBN 0471976970.

Poznámka:

Rozsah=konzultace+seminae

Další informace:
Pro tento předmět se rozvrh nepřipravuje
Předmět je součástí následujících studijních plánů:
Platnost dat k 22. 9. 2019
Aktualizace výše uvedených informací naleznete na adrese http://bilakniha.cvut.cz/cs/predmet1445406.html