Welche spezifischen Vor- und Nachteile ergeben sich aus der Arbeit an einer Programmiersprachengrammatik? Warum / Wann sollte ich meine eigenen rollen? Warum / Wann sollte ich einen Generator
Analysieren von (un) strukturierten Daten, um sie in ein strukturiertes, normalisiertes Format zu konvertieren.
Welche spezifischen Vor- und Nachteile ergeben sich aus der Arbeit an einer Programmiersprachengrammatik? Warum / Wann sollte ich meine eigenen rollen? Warum / Wann sollte ich einen Generator
Ich habe mich in letzter Zeit intensiv mit der Welt der Parser befasst und wollte meine eigene Programmiersprache erstellen. Ich fand jedoch heraus, dass es zwei unterschiedliche Ansätze zum Schreiben von Parsern gibt: Parser-Generatoren und Parser-Kombinatoren. Interessanterweise konnte ich...
Ich glaube, ich verstehe das Ziel eines AST und habe schon einige Baumstrukturen gebaut, aber niemals einen AST. Ich bin größtenteils verwirrt, weil die Knoten aus Text und nicht aus Zahlen bestehen. Daher kann ich mir keine gute Möglichkeit vorstellen, ein Token / eine Zeichenfolge einzugeben,...
Ich war die Erforschung über die gcc - Compiler - Suite auf wikipedia hier , wenn dies kam: GCC begann mit der Verwendung von LALR-Parsern, die mit Bison generiert wurden, wechselte jedoch allmählich zu handgeschriebenen rekursiven Parsern. Für C ++ im Jahr 2004 und für C und Objective-C im Jahr...
Ich habe mich oft gefragt, warum beim Erstellen von HTML kein striktes Parsen gewählt wurde. Während des größten Teils der Internetgeschichte haben Browser jede Art von Markup akzeptiert und ihr Bestes versucht, um es zu analysieren. Der Prozess verschlechtert die Leistung, ermöglicht es Benutzern,...
Ich bemerkte zu meiner Freude, dass C ++ 11 eine std::sto@Reihe von Funktionen zum einfachen Entpacken von Ints / Floats / Longs von Strings bietet. Ich bin jedoch überrascht, dass das Gegenteil nicht implementiert ist. Warum hat das Normungsgremium keine std::itosFunktionsfamilie für den Übergang...
Wie werden Kommentare generell in Programmiersprachen und Markups behandelt? Ich schreibe einen Parser für eine benutzerdefinierte Auszeichnungssprache und möchte dem Prinzip der geringsten Überraschung folgen , also versuche ich, die allgemeine Konvention zu bestimmen. Soll beispielsweise ein in...
War fasziniert, über das Text-Abenteuerspiel The Hobbit zu lesen, das einen unglaublich robusten Parser namens "Inglish" enthielt: ... Englisch erlaubt es einem, fortgeschrittene Sätze wie "Fragen Sie Gandalf nach der merkwürdigen Karte, nehmen Sie dann das Schwert und töten Sie den Troll damit"...
Herkömmliche Parser verbrauchen ihre gesamte Eingabe und erzeugen einen einzelnen Analysebaum. Ich suche einen, der einen kontinuierlichen Stream verbraucht und eine Analyse-Gesamtstruktur erzeugt. [ Bearbeiten: Siehe Diskussion in Kommentaren dazu, warum diese Verwendung dieses Begriffs...
Speicher (und Ressourcensperren) werden an deterministischen Punkten während der Programmausführung an das Betriebssystem zurückgegeben. Der Steuerungsfluss eines Programms allein reicht aus, um zu wissen, wo eine bestimmte Ressource mit Sicherheit freigegeben werden kann. Genau wie ein...
Mir wurde die Aufgabe übertragen, eine domänenspezifische Sprache für ein Tool zu implementieren, das für das Unternehmen sehr wichtig werden kann. Die Sprache ist einfach, aber nicht trivial, sie erlaubt bereits geschachtelte Schleifen, Verkettung von Zeichenfolgen usw. und es ist praktisch...
Ich bin dabei, meine eigene Programmiersprache zu erstellen, die ich zu Lernzwecken verwende. Ich habe bereits das Lexer und ein rekursives Descent-Parser für eine Teilmenge meiner Sprache geschrieben (derzeit unterstütze ich mathematische Ausdrücke wie + - * /und in Klammern). Der Parser gibt mir...
Ich versuche, Zusammenstellung und Interpretation Schritt für Schritt zu verstehen und ein Gesamtbild zu finden. Ich bin also auf eine Frage gekommen, als ich diesen Artikel gelesen habe: http://www.cs.man.ac.uk/~pjj/farrell/comp3.html Es sagt : Die nächste Stufe des Compilers heißt Parser....
Diese Frage wurde von Stack Overflow migriert, da sie in Software Engineering Stack Exchange beantwortet werden kann. Vor 7 Jahren migriert . Problem: Führen Sie Befehle in Form einer Zeichenfolge aus. befehlsbeispiel: /user/files/ list all; gleichwertig: /user/files/...
Ein Kollege und ich haben kürzlich darüber gestritten, ob ein reiner regulärer Ausdruck das csv-Format vollständig kapseln kann, sodass alle Dateien mit einem bestimmten Escape-, Anführungszeichen und Trennzeichen analysiert werden können. Der Regex muss nicht in der Lage sein, diese Zeichen nach...
Ich möchte einen generischen Regel-Parser für RPG-Systeme im Stift- und Papierstil erstellen. Eine Regel kann normalerweise 1 bis N Entitäten, 1 bis N Rollen eines Würfels und das Berechnen von Werten basierend auf mehreren Attributen einer Entität umfassen. Beispielsweise: Spieler hat STR 18,...
Als ich anfing, Parser-Kombinatoren zu verwenden, war meine erste Reaktion ein Gefühl der Befreiung von einer künstlichen Unterscheidung zwischen Parsing und Lexing. Plötzlich wurde alles nur noch analysiert! Vor kurzem bin ich jedoch auf dieses Posting auf codereview.stackexchange gestoßen, das...
Wenn ich mich richtig an den Kurs meines Compilers erinnere, hat der typische Compiler die folgende vereinfachte Gliederung: Einen lexikalischen Analysator Scans (oder einige Anrufe Abtastfunktion auf) der Quellcode Zeichen- für -Zeichen - Die Zeichenfolge der eingegebenen Zeichen wird anhand des...
Ich schreibe einen Parser für eine von mir erstellte Auszeichnungssprache (in Python schreiben, aber das ist für diese Frage nicht wirklich relevant - in der Tat, wenn dies wie eine schlechte Idee erscheint, würde ich einen Vorschlag für einen besseren Pfad lieben). . Ich lese hier über Parser:...
Welche Tests sollte ich verwenden, um einen CSV-Parser nach dem Unit-Test zu testen? Ich habe einen einfachen csv-Parser in C #, und ich möchte sichergehen, dass ich eine gute Einheitentestabdeckung für alle gängigen (und seltenen) Edge-Fälle habe. Welche Tests sollte ich verwenden, um mögliche...