====== Literatura ====== **Niklaus Wirth: Compiler Construction ** \\ http://inf.ethz.ch/personal/wirth/CompilerConstruction/CompilerConstruction1.pdf \\ **Steven Pemberton and Martin Daniels: Pascal Implementation: The P4 Compiler and Interpreter ** \\ http://homepages.cwi.nl/~steven/pascal ====== Lexikální analyzátor ====== [[prekl:lexer|lexikální analyzátor]] Video: Lexical Analysis http://www.youtube.com/watch?v=sJKFLcsysVs ( Úvod: http://www.youtube.com/watch?v=0A079QpDAzY ) ====== Syntaktická analýza ====== ===== Syntaktická analýza výrazů ===== [[prekl::expr|syntaktická analýza výrazů]] ===== Gramatika popisující příkazy zjednodušeného jazyka C ===== [[prekl::stat|gramatika popisující příkazy]] ===== Příklady syntaktických analyzátorů ===== [[prekl:mini_parser| Příklad ručně psaného parseru příkazů]] [[prekl:mini_table| Příklad parseru pro popis databázových tabulek]] Video: Syntax Analysis http://www.youtube.com/watch?v=8nBoVjEOCMI ====== Strojově generované syntaktické analyzátory ====== ===== Gramatika popisující gramatiku ===== [[prekl::gram|gramatika]] ===== Parser pro popis gramatiky ===== [[prekl::gram_parser|Načtení popisu gramatiky a uložení do stromové struktury]] ===== Zobrazení gramatiky ===== [[prekl::gram_html|Zobrazení pomocí HTML]] [[prekl::gram_lout|Zobrazení programem LOUT]] ===== Množiny symbolů, kterými začínají jednotlivá syntaktická pravidla ==== [[prekl::gram_nullable|Vypouštějící pravidla]] [[prekl::gram_symbols|Množiny symbolů]] ===== Syntaktický analyzátor ===== [[prekl::parser|Parser]] ====== Objektově orientované syntaktické stromy ====== ===== Syntaktický analyzátor vytvářející syntaktický strom ===== [[prekl::parser_tree|parser vytvářející strom]] ===== Tisk programu uloženého v syntaktickém stromu ===== [[prekl::product|product]] ===== Select ==== [[prekl::select|select]] ===== Choose ==== [[prekl::choose|choose]] ====== Příklady ====== ===== Příklady v adresáři tutorial ===== [[prekl::c1|c1 - jednoduchá gramatika pro výrazy a příkazy]] [[prekl::c2|c2 - zobrazení syntaktického stromu]] [[prekl::c3|c3 - gramatika]] [[prekl::c3_comp|c3 - zpracování deklarací]] [[prekl::c3_python|c3 - převod do Pythonu]] [[prekl::c4|c4 - syntaktické predikáty, generování instrukcí]] ===== C-- ===== [[prekl::cmm_grammar|gramatika C--, sémantické predikáty]] [[prekl::cmm_comp|zpracování deklarací]] [[prekl::cmm_qt|převod do Pythonu, PyQt]]