PA037 Projekt z překladačů

Fakulta informatiky
podzim 2024
Rozsah
1/2/1. 4 kr. (plus ukončení). Ukončení: z.
Vyučováno kontaktně
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Antonín Kučera, Ph.D.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Rozvrh
Po 23. 9. až Pá 22. 11. Po 10:00–12:50 C525, Po 25. 11. až Po 16. 12. Po 10:00–12:50 S215
Předpoklady
PA008 Překladače
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
předmět má 29 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Výstupy z učení
Vlastní zkušenost s implementací překladače.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2024
Rozsah
1/2/1. 4 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Antonín Kučera, Ph.D.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Rozvrh
Po 19. 2. až Čt 9. 5. Čt 12:00–13:50 A319
Předpoklady
PA008 Překladače
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
předmět má 53 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Výstupy z učení
Vlastní zkušenost s implementací překladače.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2023
Rozsah
1/2/1. 4 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Antonín Kučera, Ph.D.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Rozvrh
Čt 16. 2. až Čt 11. 5. Čt 12:00–13:50 C416
Předpoklady
PA008 Překladače
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
předmět má 53 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Výstupy z učení
Vlastní zkušenost s implementací překladače.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2022
Rozsah
1/2/1. 4 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Antonín Kučera, Ph.D.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Předpoklady
PA008 Překladače
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
předmět má 52 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Výstupy z učení
Vlastní zkušenost s implementací překladače.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2021
Rozsah
1/2/1. 4 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Antonín Kučera, Ph.D.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Předpoklady
PA008 Překladače
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
předmět má 52 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Výstupy z učení
Vlastní zkušenost s implementací překladače.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2020
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Antonín Kučera, Ph.D.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Předpoklady
PA008 Překladače
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
předmět má 52 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Výstupy z učení
Vlastní zkušenost s implementací překladače.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2019
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Předpoklady
PA008 Překladače
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
předmět má 23 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2018
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Předpoklady
PA008 Překladače
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
předmět má 23 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2017
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Rozvrh
Po 12:00–13:50 C417
Předpoklady
PA008 Překladače
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
předmět má 23 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2016
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Předpoklady
PA008 Překladače
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
předmět má 23 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2015
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Předpoklady
PA008 Překladače
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
předmět má 22 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2014
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Rozvrh
Út 12:00–13:50 G191m
Předpoklady
PA008 Překladače
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
předmět má 22 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2013
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Rozvrh
Čt 10:00–11:50 G123
Předpoklady
PA008 Překladače
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
předmět má 22 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2012
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Dodavatelské pracoviště: Katedra teorie programování – Fakulta informatiky
Rozvrh
Čt 14:00–15:50 B411
Předpoklady
PA008 Překladače
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
předmět má 22 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2011
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Rozvrh
Čt 14:00–15:50 B411
Předpoklady
PA008 Překladače
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
předmět má 21 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2010
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Rozvrh
St 12:00–13:50 B411
Předpoklady
PA008 Překladače
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
předmět má 21 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Výukové metody
Přednášky, cvičení, projekt.
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2009
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Předpoklady
PA008 Překladače
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
předmět má 18 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Hlavním cílem kurzu je: detailně porozumět problematice návrhu programovacích jazyků a jejich překladačů; implementovat překladač vybraného programovacího jazyka.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Literatura
  • WILHELM, Reinhard a Dieter MAURER. Compiler design. Wokingham: Addison-Wesley Publishing Company, 1995, xv, 606 s. ISBN 0-201-42290-5. info
  • FISCHER, Charles N. a Richard J. LEBLANC. Crafting a compiler. Menlo Park: Benjamin/Cummings Publishing Company, 1988, 811 s. ISBN 0-8053-3201-4. info
  • AHO, Alfred V., Ravi SETHI a Jeffrey D. ULLMAN. Compilers, principles, techniques, and tools. Reading: Addison-Wesley Publishing Company, 1987, x, 796 s. ISBN 0-201-10088-6. info
Metody hodnocení
Semináře a práce na projektu.
Dokončení skupinového projektu je podmínkou k udělení zápočtu.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2008
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Rozvrh
Čt 12:00–13:50 B411
Předpoklady
PA008 Překladače
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
předmět má 18 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2007
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Rozvrh
Čt 14:00–15:50 B411
Předpoklady
P008 Překladače
PA008 Překladače
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
předmět má 6 mateřských oborů, zobrazit
Cíle předmětu
Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
Osnova
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2006
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Rozvrh
Út 10:00–11:50 B411
Předpoklady
P008 Překladače
PA008 Překladače
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
předmět má 6 mateřských oborů, zobrazit
Osnova
  • Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2005
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Rozvrh
St 14:00–15:50 B403
Předpoklady
P008 Překladače
PA008 Překladače
Omezení zápisu do předmětu
Předmět je určen pouze studentům mateřských oborů.
Mateřské obory/plány
předmět má 6 mateřských oborů, zobrazit
Osnova
  • Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2004
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: prof. RNDr. Antonín Kučera, Ph.D.
Rozvrh
Čt 12:00–13:50 B411
Předpoklady
P008 Překladače
PA008 Překladače
Omezení zápisu do předmětu
Předmět je určen pouze studentům mateřských oborů.
Mateřské obory/plány
Osnova
  • Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2003, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.

PA037 Projekt z překladačů

Fakulta informatiky
jaro 2003
Rozsah
0/2. 2 kr. (plus ukončení). Ukončení: z.
Vyučující
prof. RNDr. Antonín Kučera, Ph.D. (přednášející)
Garance
prof. PhDr. Karel Pala, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Kontaktní osoba: doc. RNDr. Pavel Smrž, Ph.D.
Rozvrh
Čt 16:00–17:50 B411
Předpoklady
( P008 Překladače || PA008 Překladače )
PA008 Překladače
Omezení zápisu do předmětu
Předmět je určen pouze studentům mateřských oborů.
Mateřské obory/plány
předmět má 6 mateřských oborů, zobrazit
Osnova
  • Účelem semináře je hlubší seznámení s problematikou návrhu programovacích jazyků a jejich překladačů. Student by měl získat jasnou představu o fungování reálných překladačů, o problémech, které jsou spojeny s jejich implementací a možných přístupech k řešení těchto problémů. Podmínkou udělení zápočtu je plně funkční implementace překladače jednoduchého programovacího jazyka. Možná je spolupráce ve skupinách (2--4 studenti), náročnost projektu roste úměrně počtu členů.
  • Logická struktura překladače. Formalismy pro specifikaci jednotlivých modulů.
  • Lexikální analyzátor. Regulární výrazy. Princip nejdelší shody. Precedence lexémů.
  • Syntaktický analyzátor. Analýza shora a zdola.
  • Sémantický analyzátor. Atributové gramatiky. Tok atributů. Vyhodnocení atributů během syntaktické analýzy.
  • Generátor kódu, optimalizace.
  • Úplná specifikace jednoduchého optimalizujícího překladače, vazba a spolupráce mezi logickými moduly.
  • Tabulky symbolů jako atributy. Zpracování deklarací, typová kontrola, analýza rozsahu viditelnosti.
  • Funkce. Aktivační záznam. Předávání parametrů. Konvence jazyků C a Pascal.
  • Vstup a výstup. Vazby na operační systém. Unix a C.
  • Překlad do asembleru procesoru I386, konvence jazyka C.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, jaro 2020, jaro 2021, jaro 2022, jaro 2023, jaro 2024, podzim 2024.