www.wikidata.de-de.nina.az
Im Compilerbau ist ein Parsergenerator ein Computerprogramm das auf Grundlage einer Spezifikation einen Parser generiert Grundlagen BearbeitenEin Parsergenerator erzeugt Unterprogramme fur Programmier sprachen die deren grammatikalische Analyse und Transformation ermoglichen Die erzeugten Unterprogramme werden Parser genannt Als Eingabe erhalt ein Parsergenerator die Syntax der Sprache fur die er einen Parser erzeugen soll Bei dieser Sprache kann es sich z B um eine Programmiersprache handeln Die Spezifikation des Parsers erfolgt in der Regel in Backus Naur Form BNF oder in Erweiterter Backus Naur Form EBNF Viele Parsergeneratoren benotigen einen Scanner fur die Symbolerkennung Dieser Scanner wird in der Regel von einem integrierten oder externen Scannergenerator erzeugt Die vom Parser erzeugte Reprasentation bildet dann die Grundlage fur einen Compiler oder Interpreter Der Aufwand zum Erzeugen eines leistungsfahigen und korrekten Compilers wird durch Parsergeneratoren deutlich reduziert Algorithmen BearbeitenEffiziente Parsergeneratoren beschranken sich darauf Parser fur deterministisch kontextfreie Grammatiken zu erzeugen Folgende Algorithmen werden von gangigen Parsergeneratoren verwendet LL k Parsing JavaCC Coco R LL Parsing ANTLR LALR 1 Parsing SableCC yacc GNU Bison Lemon Daruber hinaus gibt es weitere Paradigmen z B GLR Parser die eine grossere Klasse von Grammatiken abdecken aber weniger gebrauchlich sind Weblinks Bearbeiten LR k Analyse fur Pragmatiker Abgerufen von https de wikipedia org w index php title Parsergenerator amp oldid 195281084