Als «parsers» getaggte Fragen

Fragen zu Algorithmen, die entscheiden, ob eine bestimmte Zeichenfolge zu einer festen formalen Sprache gehört.




2
Gibt es für jeden "bösen" Regex eine nicht-böse Alternative, oder ist der Teufel in der Grammatik?
Anscheinend nutzen ReDos- Angriffe die Eigenschaften einiger (ansonsten nützlicher) regulärer Ausdrücke aus. Dies führt im Wesentlichen zu einer Explosion möglicher Pfade durch den von der NFA definierten Graphen. Ist es möglich, solche Probleme zu vermeiden, indem man einen entsprechenden "nicht bösen" Regex schreibt? Wenn nicht (daher kann die Grammatik von …


1
Warum getrennt lexen und analysieren?
Es ist möglich, ein Dokument mit einem einzigen Durchgang von einem Zustandsautomaten aus zu analysieren. Was ist der Vorteil von zwei Durchgängen, dh. Haben Sie einen Lexer zum Konvertieren von Text in Token und einen Parser zum Testen der Produktionsregeln für diese Token? Warum nicht einen einzigen Durchgang haben, der …

2
Was ist ein IELR (1) -Parser?
Ich versuche mir den Umgang mit Bisons beizubringen. Die Manpage Bison (1) sagt über Bison: Generieren Sie einen deterministischen LR-Parser oder einen generalisierten LR-Parser (GLR-Parser) unter Verwendung von LALR- (1), IELR- (1) oder kanonischen LR- (1) Parsertabellen. Was ist ein IELR-Parser? Alle relevanten Artikel, die ich im Internet gefunden habe, …

1
Wann hat
Gemäß dem Wikipedia-Artikel bedeutet das L in "Abtastung von links nach rechts" und das "R" bedeutet "Ableitung ganz rechts". In Knuths Originalarbeit über L R ( k ) -Grammatiken definiert er L R ( k ) (auf Seite 610) als eine Sprache, die "mit gebundenem k von links nach rechts …

3
Was würden Sie erhalten, wenn Sie kontextfreie Grammatiken mit Parametern versehen?
Ich dachte an Grammatiken für indendationssensitive Sprachen und es sieht so aus, als würden CF-Grammatiken in Kombination mit Parametern den Trick machen. Betrachten Sie als Beispiel dieses Fragment für eine vereinfachte Python-Grammatik im ANTLR-ähnlichen Format: // on top-level the statements have empty indent program : statement('')+ ; // let's consider …

5
Inwiefern unterscheidet sich die Eindeutigkeit vom Determinismus?
Ich versuche zu verstehen, was unter "deterministisch" in Ausdrücken wie "deterministische kontextfreie Grammatik" zu verstehen ist. (Es gibt eher deterministische "Dinge" in diesem Bereich). Ich würde ein Beispiel mehr schätzen als die ausführlichste Erklärung! Wenn möglich. Meine Hauptverwirrung ist, dass ich nicht feststellen kann, inwiefern sich diese Eigenschaft einer Grammatik …




2
Benötigt die Sprache regulärer Ausdrücke Push-Down-Automaten, um sie zu analysieren?
Ich möchte einen von einem Benutzer eingegebenen regulären Ausdruck in einen NFA konvertieren, damit ich den NFA dann zu Übereinstimmungszwecken für eine Zeichenfolge ausführen kann. Was ist die minimale Maschine, die verwendet werden kann, um reguläre Ausdrücke zu analysieren? Ich gehe davon aus, dass es sich um einen Push-Down-Automaten handeln …

3
Wie ist diese Grammatik LL (1)?
Dies ist eine Frage aus dem Drachenbuch. Das ist die Grammatik: S→AaAb∣BbBaS.→EINeinEINb∣B.bB.einS \to AaAb \mid BbBa B → εA→εEIN→εA \to \varepsilon B→εB.→εB \to \varepsilon In der Frage wird gefragt, wie gezeigt werden kann, dass es sich um LL (1) handelt, nicht jedoch um SLR (1). Um zu beweisen, dass es …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.