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:
- Microsoft acquista U-Prove
- Stickeria
- Lunedì quiz 4–soluzione
- Monopoly
- Il manuale del perfetto ZFS Home Server
Commenti (4):


Facebook,
Wikio,
Segnalo.

giovedì 10 marzo 2011 alle 9:22 AM -
Noooooo, informatica teorica nooooooooooo
Permalink - Rispondi al commento
giovedì 10 marzo 2011 alle 9:18 PM -
Pensa a me che per esercizio spirituale il parser l'ho dovuto scrivere a manina...
Permalink - Rispondi al commento
giovedì 10 marzo 2011 alle 9:58 PM -
Seconda domanda: indicare il tipo di grammatica, il tipo di linguaggio ottenuto e determinare l'automa minimo che riconosce il linguaggio
Edward
Permalink - Rispondi al commento
mercoledì 6 aprile 2011 alle 9:33 PM -
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.
Permalink - Rispondi al commento