Esercizio grammaticale

Per il dileggio del lettore interessato dall’affascinante mondo del parsing (sì, ne sto scrivendo un altro in virtù della già citata maledizione).

Data la seguente grammatica ( S il simbolo di partenza, in maiuscolo i terminali, in minuscolo le regole di produzione), convertirla in forma LL(1):

S –> q
q –> ( q ) | r
r –> A u | ( t )
u –> B | ( t )
t –> u | t t

-quack

Potrebbero interessarti anche:
Commenti (4):
1. Daniele
giovedì 10 marzo 2011 alle 9:22 AM - firefox 4.0 Windows 7
   

Noooooo, informatica teorica nooooooooooo

   
2. Paperino
giovedì 10 marzo 2011 alle 9:18 PM - chrome 10.0.648.127 Windows 7
   

Pensa a me che per esercizio spirituale il parser l'ho dovuto scrivere a manina...

   
3. Edward
giovedì 10 marzo 2011 alle 9:58 PM - firefox 4.0 Windows 7
   

Seconda domanda: indicare il tipo di grammatica, il tipo di linguaggio ottenuto e determinare l'automa minimo che riconosce il linguaggio

 

Edward

   
4. Paperino
mercoledì 6 aprile 2011 alle 9:33 PM - chrome 10.0.648.204 Windows 7
   

In realtà la grammatica è ambigua:

q -> (q) -> (r) -> ((t))
q -> r -> (t) -> ((t))

in quanto tale c'è stato poco da fare. Scoperta e risolta l'ambiguità tutto è diventato molto più semplice.

   
Lascia un commento:
Commento: (clicca su questo link per gli smiley supportati; regole di ingaggio per i commenti)
(opzionale, per il Gravatar)