include("header.php") ?>
Linguaggi e Traduttori
JFlex & Cup
Home
//banner(); ?>
JFlex e Cup sono la versione Java rispettivamente dello scanner Flex e del parser Bison
0 - Indice
1 - Nozioni preliminari
2 - Esercitazioni in Aula
3 - Esercitazioni di Laboratorio
4 - Risorse utili
5 - Interprete Pseudo Assembler
6 - Temi d'Esame
1 - Nozioni preliminari
Installazione in ambiente Linux:
Come scaricare, installare e configurare Java, JFlex e Cup in ambiente linux
Installazione in ambiente Windows:
Come scaricare, installare e configurare Java, JFlex e Cup in ambiente Windows
Versione di CUP che disegna albero di derivazione: java_cup_v10k_drawTree.tar.gz, java_cup_v10k_drawTree.zip
(Per installarlo occorre copiare i file presenti in uno dei due archivi al posto di quelli presenti nella directory dove si è installato CUP)
2 - Esercitazioni in Aula
3 - Esercitazioni di Laboratorio
- Esercitazione 1: laboratorio_1.pdf
Prima di iniziare l'esercitazione si provi a compilare il seguente esempio di scanner standalone:
Esempio Scanner Standalone
Espressioni regolare e utilizzo dello scanner JFlex
Soluzioni: Esercizio 1, Esercizio 2, Esercizio 3
- Esercitazione 2: laboratorio_2.pdf
Realizzazione di uno scanner semplificato per il linguaggio C e ulteriore esercizio sull'utilizzo di JFlex.
Soluzioni: Esercizio 1, Esercizio 2
- Esercitazione 3: laboratorio_3.pdf
Realizzazione di un parser per un linguaggio C semplificato, realizzare la grammatica di un tema d'esame, realizzare la grammatica del linguaggio C.
Nel caso di conflitti usare l'opzione di compilazione -expect numero_conflitti di cup.
Codice fornito: Viene fornito il codice che realizza lo scanner, il main, parte del parser e un Makefile per il primo esercizio (compiler_es2_before.zip).
Viene fornito scanner e main per il terzo esercizio (scanner.jflex, Main.java).
Soluzioni: Esercizio 1, Esercizio 2, Esercizio 3
-
Esercitazione 4: testo
Gestione degli errori nel linguaggio mini C e riconoscimento un programma logico.
Soluzioni: Esercizio 1, Esercizio 2
-
Esercitazione 5: testo
Realizzazione di una calcolatrice dotata di memoria.
Si allega la realizzazione di parte dello scanner e del parser scanner, parser
Soluzione: Esercizio 1
-
Esercitazione 6: testo
Realizzazione un traduttore da mini C a Pseudo Assembler
Descrizione del linguaggio Pseudo Assembler: interpreter.pdf.
Download interprete: interpreter.jar
Soluzione: Esercizio 1
-
Esercitazione 7: testo
Type checking
Soluzione: Esercizio 1, Esercizio 2
4 - Risorse utili
4.1 - Flex
4.2 - Cup
4.3 - Java
5 - Interprete Pseudo Assembler
6 - Temi d'esame
- Tema del 18/07/1997: testo
- Tema del 11/10/1997: testo
- Tema del 26/01/2004: testo
- Tema del 06/09/2004: testo
- Tema del 07/02/2006: testo
- Tema del 07/11/2006: testo
- Tema del 23/01/2007: testo
- Tema del 06/09/2007: testo
- NEW Tema del 13/11/2007: testo
6 - Tesine
Esempi di specifiche:
include_once("footer.php") ?>