Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Algoritmi - Grammatica per Parser LL
Forum - Algoritmi - Grammatica per Parser LL

Avatar
simofurn (Normal User)
Newbie


Messaggi: 1
Iscritto: 23/06/2015

Segnala al moderatore
Postato alle 17:03
Martedì, 23/06/2015
Ciao, mi interesserebbe definire una grammatica di tipo LL per un Parser, ma non credo di aver impostato il lavoro nel modo giusto.
Il problema per cui vorrei realizzare la grammatica è il seguente:

Dato un testo composto da qualsiasi carattere, riconoscere pattern del tipo "while <...> do <...> od" ove "<...>" è testo qualsiasi(compresi altri while do od annidati).

Es.
"int a = 0;
while a<10 do a = a+1 od"

Potreste propormi una grammatica corretta su cui posso iniziare a ragionare in modo da capire il modo corretto di lavorare.

Vi ringrazio in anticipo per il vostro aiuto, spero di essere stato chiaro nella spiegazione.

Grazie :hail:

PM Quote
Avatar
dmr (Normal User)
Pro


Messaggi: 141
Iscritto: 04/01/2012

Segnala al moderatore
Postato alle 18:18
Martedì, 23/06/2015
Un esempio semplicissimo:

programma-> decl stmt

decl-> int id;
        | altri

stmt-> while expr do stmt od
        | id= expr
        | altri stmt
        | e

expr-> grammatica espressioni

Comunque se vai a vedere le grammatiche dei linguaggi di programmazione, li trovi tutto, anche se complesse.

Ultima modifica effettuata da dmr il 23/06/2015 alle 18:29


Principali interessi: Compilatori e generatori di parser.
PM Quote