Università degli Studi di Bari
Facoltà MM.FF.NN.
Dipartimento di Informatica
Facoltà MM.FF.NN.
Dipartimento di Informatica
c.d.l Informatica e Tecnologie per la produzione del Software
a.a.2007/2008
a.a.2007/2008
Caso di Studio Linguaggi di Programmazione
( creazione di un analizzatore sintattico lessicale, di un linguaggio a scelta,
con l’ausilio di javaCC )
Linguaggio per la formalizzazione di RICETTE DA CUCINA
Obiettivo del caso di studio è la costruzione di un parser, per l’analisi sintattico logica, ma ancor prima, è la scelta di un linguaggio e la relativa descrizione formale.
Il linguaggio da me scelto, è quello delle ricette da cucina.
Per linguaggio delle ricette, intendo: l’insieme di stringhe(comandi,operazioni,valori ecc..) tali da essere sufficienti a descrivere le fasi di realizzazione di una ricetta da cucina.
Per fare ciò, dopo l’analisi di ricette scritte in maniera comune, ho ricavato la seguente strutturazione analoga.
- Ogni ricetta è divisibile in tre parti: Ingredienti, Strumenti e Preparazione.
- Ogni ingrediente è composto da un nome e un valore e relativa unità di misura opzionali.
Alcuni esempi: olio; 10g di zucchero, patate 2….
- Ogni [...]
Indipendentemente dalla difficoltà nella realizzazione, con i precedenti strumenti, si è in grado di descrivere la preparazione di qualsiasi ricetta.
Per intendere il reale di utilizzo del mio linguaggio, mostro di seguito un esempio concreto:
Un ipotetico software di supporto grafico alla realizzazione di ricette da cucina, si limita a interpretare in modo visuale, le istruzioni contenute in un determinato file di input. Naturalmente il SW è programmato per far corrispondere a determinate stringhe testuali contenute nel file, delle animazioni pertinenti(nella pagina seguente, l’ipotetica interfaccia grafica del SW).
Per intendere il reale di utilizzo del mio linguaggio, mostro di seguito un esempio concreto:
Un ipotetico software di supporto grafico alla realizzazione di ricette da cucina, si limita a interpretare in modo visuale, le istruzioni contenute in un determinato file di input. Naturalmente il SW è programmato per far corrispondere a determinate stringhe testuali contenute nel file, delle animazioni pertinenti(nella pagina seguente, l’ipotetica interfaccia grafica del SW).
[...], in una grammatica(di tipo 2) scritta secondo lo standard BNF, [...]
Nota: utilizziamo il parser richiamandolo da prompt dei comandi (Microsoft Windows) reindirizzando l’input da un file di testo e reindirizzando l’output(il debug) in un file di testo:
riga di comando: java parserRicettericetta_debug.txt
Il file ricetta.txt è corretto se il file ricetta_debug.txt si conclude con:
Returning thetoken.
Return: Input
Interfaccia grafica del SW di supporto alla realizzazione delle ricette.
Nota: utilizziamo il parser richiamandolo da prompt dei comandi (Microsoft Windows) reindirizzando l’input da un file di testo e reindirizzando l’output(il debug) in un file di testo:
riga di comando: java parserRicette
Il file ricetta.txt è corretto se il file ricetta_debug.txt si conclude con:
Returning the
Return: Input
Interfaccia grafica del SW di supporto alla realizzazione delle ricette.
LINK:
esempio di codice2(es1 è contenuto nella relazione) : panzerotti fritti
Nessun commento:
Posta un commento