Esercizio: componiamo trasformazioni

Slides:



Advertisements
Presentazioni simili
Generalità Linguaggio e Macchina Astratta
Advertisements

PROGRAMMARE IN C Un ambiente di sviluppo `e un software che serve per scrivere ed eseguire programmi. Generalmente integra almeno 3 funzionalita’: Editor:
Si dica in quale modo la trasformazione di Thompson, TF, può essere considerata come definente un compilatore. In particolare, si dica: –a) chi sono il.
Grafica interattiva a.a. 2003/2004 Docente: Prof. Enrico Puppo Laboratorio: Dott. Paola Magillo.
19 febbraio. A piccoli passi… Classi seconde …verso un mondo più sostenibile.
Grammatiche 1 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa A05 Autovalutazione.
Unità di apprendimento 6 Dal problema al programma.
Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia
IL RUOLO DELLA TECNOLOGIA NEL PROGETTO DI ARCHITETTURA “Progettazione dei Sistemi Costruttivi”
La verità.
Condizioni per l’ottenimento dell’Attestato Federale di Capacità
Comitato Genitori Tacito-Guareschi
GLI IPERMEDIA LA COMUNICAZIONE è una forma di relazione sociale che coinvolge aspetti ed elementi diversi. E’ composta da: MITTENTE= chi manda.
Java World Introduzione.
Progetto Indicazione nazionali per il curricolo della scuola dell’infanzia e del primo ciclo d’istruzione misure di accompagnamento 2015/2016 Certificazione.
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
rielaborato da Atzeni-etal., Basi di dati, Capitolo 4
La programmazione in LADDER
Proposta di soluzione per trovare le incognite in una formula
Introduzione al linguaggio C
Programmazione per la Musica | Adriano Baratè
A. A – 2008 Basi di dati 1 Corso Prof
Felicità realista e... Tanti fiori.
Sicurezza e Grid Computing
#Code’scool.
Slideplayer esercizio.
ESERCIZI CON LE ISOMETRIE
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Unità di apprendimento 7
Esercizi.
Unità didattica 1: Introduzione al linguaggio Java
CORSO MINI SUB 2016 MINIARA 1 STELLA.
La programmazione in LADDER
Elevamento a potenza di G. CALVI
2. La struttura del periodo coordinazione e subordinazione
« di chimica non ho mai capito nulla e vivo bene lo stesso»
Corso Java Introduzione.
Macchine termiche e Secondo Principio della Termodinamica
LE PERSONE PARLANO TRA LORO PER SCAMBIARSI EMOZIONI, IDEE, PER RACCONTARSI… COMUNICARE ATTRAVERSO IL LINGUAGGIO E’ LA COSA PIU’ DIFFUSA SU TUTTA LA TERRA.
Xx meeting dei diritti umani
Tempistica: CLASSE PRIMA.
Programmare.
L’ idrogeno come combustibile
Professore per un giorno
Suggerimenti e considerazioni
I bastoncini per dividere ideati da Genaille e Lucas
intestazione In power point
Moltiplicare con i bastoncini
Apprendimento visuale
LA MAPPA DEL LAVORO DEL LAVORO.
© 2007 SEI-Società Editrice Internazionale, Apogeo
“L’import / export delle buone prassi…”
ESERCIZI CON I GRAFICI.
Modello dell’interesse semplice
Definizione di linguaggio di programmazione
VUOI SAPERE COME FARE UN RIASSUNTO?
Esercizio 1 Scrivete un programma C "creaproc" che crea (mediante fork) il numero di processi specificati in input. ad esempio: $> creaproc 7 crea 7 nuovi.
Fondamenti di Informatica
« di chimica non ho mai capito nulla e vivo bene lo stesso»
APPUNTI SUL LINGUAGGIO C Esercizi su File e Alberi Binari
Me & my family Classe: III B
Organizzare le attivita’: LEARNING TARGET e il metodo delle 4 r
Introduzione a Logisim
APPUNTI SUL LINGUAGGIO C
Il Promptuarium di Nepero
Java Introduzione.
Diagrammi di fase (o di stato)
Docente: Sabato Bufano
Transcript della presentazione:

Esercizio: componiamo trasformazioni Volendo realizzare un compilatore per O su M2=(O2,E2) si decide di procedere attraverso l’introduzione di una macchina intermedia M1=(O1,E1) realizzando i seguenti compilatori: CO->O1|O1 CO1->O2|O2 Si dica come devono essere composti i due compilari in modo da fornire il compilatore (senza fare uso a E1): CO->O2|O2

Soluzione 1) Utilizzando la tecnica del Compiler-Compiler CO1->O2|O2(CO->O1|O1) = CO->O1|O2 Ora abbiamo 2 compilatori, scritti nello stesso meta: CO1->O2|O2 CO->O1|O2 2) Dobbiamo comporli mediante un operatore di composizione funzionale “.”: CO1->O2|O2 . CO->O1|O2 = CO->O2|O2 Composizione funzionale: non tutti i linguaggi hanno un operatore come “.”