Syntaxí řízený překlad

Syntaxí řízený překlad (anglicky Syntax-directed translation, SDT) 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 editovat

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ů editovat

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 editovat

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 editovat

Reference editovat

V tomto článku byl použit překlad textu z článku Syntax-directed translation na anglické Wikipedii.

  1. a b GURARI, Eitan M. Syntax-Directed Translation Schemes (SDTS's) [online]. Dostupné v archivu pořízeném z originálu dne 2012-07-28. 
  2. AHO, Alfred V. Compilers: Principles, Techniques, & Tools. Boston: Pearson/Addison Wesley, 2007. Dostupné online. 

Související články editovat