Syntaxí řízený překlad
Syntaxí řízený překlad (anglicky Syntax-directed translation, STD) je metoda implementace překladače, v níž je překlad ze zdrojového jazyka úplně řízen postupem syntaktické analýzy.
Pro syntaxí řízený překlad se ke každému pravidlu gramatiky připojuje určitá činnost (sémantická akce).[1] Syntaktická analýza libovolného zdrojového programu tak vyvolává posloupnost sémantických akcí, které mohou například generovat fragmenty kódu v nějakém mezijazyce. SDT tak poskytuje jednoduchý způsob připojení sémantiky k libovolnému zadání syntaxe.
Popis
Specifikace syntaxí řízeného překladu v zásadě znamená přiřazení sémantických akcí k jednotlivým pravidlům bezkontextové gramatiky, čímž vznikne syntaxí řízená definice (anglicky Syntax-directed definition, SDD).[2] Sémantické akce jsou činnosti nebo procedury, které je třeba provést, když se při analýze vstupního řetězce použije určité přepisovací pravidlo. Zadání gramatiky s akcemi, které se mají provádět, se nazývá syntaxí řízené překladové schéma[1] (příp. jednoduše 'překladové schéma'.)
Použití atributů
Ke každému symbolu gramatiky mohou být připojeny atributy obsahující hodnoty přiřazené k symbolu. K obvyklým atributům patří typ proměnné, hodnota výrazu, apod. Atribut t symbolu X se obvykle značí X.t.
Jsou-li dány akce a atributy, lze gramatiku použít k překladu řetězce ze vstupního jazyka na provedení určitých akcí, přičemž dodatečné informace se přenášejí prostřednictvím atributů jednotlivých symbolů.
Metapřekladače
Slovní spojení „syntaxí řízený“ (syntax-driven) a „syntaxí řízený překlad“ (syntax-directed translation) byla použita v popisech prvních metapřekladačů, které pro generování kódu využívají metaprogramování – viz články Generátor překladačů, META II a TREE-META.
Odkazy
Reference
V tomto článku byl použit překlad textu z článku Syntax-directed translation na anglické Wikipedii.
- GURARI, Eitan M. Syntax-Directed Translation Schemes (SDTS's) [online]. Dostupné v archivu pořízeném z originálu dne 2012-07-28.
- AHO, Alfred V. Compilers: Principles, Techniques, & Tools. Boston: Pearson/Addison Wesley, 2007.