Le persone spesso dicono che i parser LR (k) sono più potenti dei parser LL (k) . Queste dichiarazioni sono vaghe per la maggior parte del tempo; in particolare, dovremmo confrontare le classi per un fisso o l'unione su tutto ? Allora, com'è davvero la situazione? In particolare, sono interessato …
EPAL, il linguaggio anche dei palindromi, è definito come il linguaggio generato dalla seguente inequivocabile grammatica senza contesto: S→ a aS→un'un'S \rightarrow a a S→ b bS→BBS \rightarrow b b S→ una Sun'S→un'Sun'S \rightarrow a S a S→ b SBS→BSBS \rightarrow b S b L'EPAL è la 'rovina' di molti …
Voglio analizzare lingue specifiche del dominio definite dall'utente. Queste lingue sono in genere vicine alle notazioni matematiche (non sto analizzando un linguaggio naturale). Gli utenti definiscono il loro DSL in una notazione BNF, in questo modo: expr ::= LiteralInteger | ( expr ) | expr + expr | expr * …
Apparentemente, ReDos attacchi sfruttano le caratteristiche di alcune espressioni regolari (altrimenti utili) ... causando essenzialmente un'esplosione di possibili percorsi attraverso il grafico definito dall'NFA. È possibile evitare tali problemi scrivendo una regex "non malvagia" equivalente? In caso contrario (quindi, la grammatica non può essere gestita nello spazio / tempo pratico …
Se ho una grammatica di tipo 3, può essere rappresentata su un automa pushdown (senza fare alcuna operazione in pila) in modo da poter rappresentare espressioni regolari usando linguaggi senza contesto. Ma posso sapere se una grammatica di tipo 3 è , , , ecc. Senza costruire tabelle di analisi?LR …
È possibile analizzare un documento utilizzando un singolo passaggio da una macchina a stati. Qual è il vantaggio di avere due passaggi, ad es. avere un lexer per convertire il testo in token e avere un parser per testare le regole di produzione su quei token? Perché non avere un …
Cerco di insegnarmi come usare il bisonte. La manpage bison (1) dice del bisonte: Genera un parser LR deterministico o LR generalizzato (GLR) utilizzando le tabelle di parser LALR (1), IELR (1) o LR canonico (1). Che cos'è un parser IELR? Tutti gli articoli pertinenti che ho trovato sul World …
Secondo l'articolo di Wikipedia , la L in significa "scansione da sinistra a destra", e la "R" significa "derivazione più a destra". Tuttavia, nel documento originale di Knuth sulle grammatiche di L R ( k ) , definisce L R ( k ) (a pagina 610) come una lingua che …
Stavo pensando alle grammatiche per i linguaggi sensibili alle indendenze e sembra che le grammatiche CF farebbero il trucco se combinate con i parametri. Ad esempio, considera questo frammento per la grammatica Python semplificata in formato simile a ANTLR: // on top-level the statements have empty indent program : statement('')+ …
Sto cercando di capire cosa si intende per "deterministico" in espressioni come "grammatica libera dal contesto deterministico". (Ci sono "cose" più deterministiche in questo campo). Gradirei un esempio più della spiegazione più elaborata! Se possibile. La mia principale fonte di confusione è dal non essere in grado di dire come …
Lavoro spesso con lexer / parser , al contrario di un combinatore di parser e vedo persone che non hanno mai frequentato un corso di analisi, chiedendo di analizzare i dati binari. In genere i dati non sono solo binari ma anche sensibili al contesto. Questo in pratica porta ad …
Ho un problema con questo esercizio: Sia G la seguente ambigua grammatica per il calcolo λ: E → v | λv.E | EE | (E) dove E è il singolo simbolo non terminale, λv.E rappresenta l'astrazione rispetto alla variabile v in E ed EE rappresenta l'applicazione. Definire una grammatica LL …
Di recente sto studiando la progettazione di compilatori. Sono venuto a conoscenza di due tipi di grammatica uno è la grammatica LL e l'altro è la grammatica LR. Sappiamo anche che ogni grammatica LL è LR, ovvero la grammatica LL è un sottoinsieme proprio della grammatica LR. Il primo viene …
Voglio convertire un utente inserito espressione regolare in un NFA in modo da poter quindi eseguire l'NFA contro una stringa per scopi corrispondenti. Qual è la macchina minima che può essere utilizzata per analizzare le espressioni regolari? Presumo che debba essere un automa push down perché la presenza di parentesi …
Questa è una domanda dal Libro del Drago. Questa è la grammatica: S→ A a A b ∣ B b B aS→AaAb∣BbBaS \to AaAb \mid BbBa A → εA→εA \to \varepsilon B → εB→εB \to \varepsilon La domanda chiede come mostrare che è LL (1) ma non SLR (1). Per …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.