← Back
OtherItalian

Tema 050314

Study material for Formal Languages and Compilers, shared by the Studwiz community and reviewed by moderators.

Formal Languages and CompilersOther

Document information

What's included in this study material

Study material for Formal Languages and Compilers, shared by the Studwiz community and reviewed by moderators.

Import quality: text was extracted directly from the original document.

Extracted content from the document

Representative passages recognised in different parts of the material. The full extracted text remains available to search, while this compact preview makes the page easier to read.

Page 1

Linguaggi Formali e Compilatori Proff. Breveglieri, Morzenti Prova scritta 1: Domanda relativa alle esercitazioni 05/03/2014 COGNOME: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NOME: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Matricola: . . . . . . . . . . . . . . . . Corso: ◦ Laurea Specialistica ◦ V. O. ◦ Laurea Triennale ◦ Altro: . . . Sezione: ◦ Prof. Breveglieri ◦ Prof.Morzenti Per la risoluzione della domanda relativa alle esercitazioni si deve utilizzare l’imple- mentazione del compilatore Acse che viene fornita insieme al compito. Si richiede di modificare la specifica dell’analizzatore lessicale da fornire a flex, quella dell’analizzatore sintattico da fornire a bison ed i file sorgenti per cui si ritengono necessarie delle modifiche in modo da estendere il compilatore Acse con la possibilit` a di gestire i costrutti map e reduce. Si consideri il seguente snippet di codice come esempio dell’utilizzo dei costrutti map e reduce: int vett[100]; int elem, t, sum; map elem on vett as { t = elem * elem; t = t + 2 * elem; elem = t - 9; } read(t); sum = 0; reduce elem into sum as [[ sum + t * elem ]] on vett; write(sum); Il costrutto map ` e utilizzato per applicare una trasformazione inplace degli elementi di un array (es. vett). Per ogni elemento (es. elem) dell’array, viene eseguito il blocco di istruzioni rappresentante la trasformazione e alla fine l’elemento viene riscritto nell’array. Il costrutto reduce ` e utilizzato per applicare una funzione di riduzione a scalare degli elementi di un array (es. vett). Il risultato della riduzione (es. sum) viene aggiornato 1Tempo 60’. Libri e appunti personali possono essere…

Preview

First page of the document.

First page: Tema 050314