traduzione Sintassi-diretto - Syntax-directed translation

Sintassi diretto definizione si riferisce ad un metodo di compilatore attuazione in cui la traduzione sorgente è completamente guidato dal parser .

Un metodo comune di traduzione sintassi diretto traduce una stringa in una sequenza di azioni collegando una tale azione a ciascuna regola di una grammatica . Così, analizzando una stringa della grammatica produce una sequenza di applicazioni regole. SDT fornisce un modo semplice per collegare la semantica a tale sintassi .

Panoramica

Traduzione Sintassi-diretto funziona fondamentalmente con l'aggiunta di azioni alle produzioni in una grammatica context-free , con un conseguente definizione di sintassi-Directed (SDD). Azioni sono operazioni o le procedure che saranno effettuati quando la produzione è utilizzato in una derivazione. Una specifica grammatica embedded con le azioni da eseguire è chiamato schema di traduzione sintassi-directed (a volte chiamato semplicemente un 'schema di traduzione'.)

Ogni simbolo nella grammatica può avere un attributo , che è un valore che deve essere associato al simbolo. Attributi comuni potrebbero includere un tipo di variabile, il valore di un'espressione, ecc Dato un simbolo X , con un attributo t , quell'attributo viene indicato come X . t

Quindi, date le azioni e gli attributi, la grammatica può essere utilizzato per tradurre le stringhe dal suo linguaggio, applicando le azioni e portando informazione tramite l'attributo di ogni simbolo.

Metacompilers

Metacompilers I primi usano i termini traduzione guidato dalla sintassi e la sintassi-diretto nelle loro descrizioni. Hanno metaprogrammazione caratteristiche del linguaggio per uscita codice.

Vedere metacompiler , META II , e TREE-META .

Guarda anche

Riferimenti