Si consideri un linguaggio di concatenazioni di istruzioni
etichettate. Le istruzioni sono assegnamento a una variabile della
somma di due variabili, salto incondizionato e salto condizionato
dall'uguaglianza di due variabili.
Si scriva uno schema discendente deterministico che calcoli come
attributo per ogni istruzione il numero di salti (condizionati e
incondizionati) all'istruzione.
Si spieghi quali attributi ereditati e/o sintetizzati si usano e
con quale significato. Non si usino strutture globali ma si passi
l'informazione come attributo. Si supponga di avere i costruttori
di struttura che occorrono e le funzioni per reperirvi
l'informazione voluta.
Si mostri l'albero sintattico annotato con gli attributi
applicando lo schema nel caso dell'esempio seguente: