Parsec oder happy (mit alex) oder uu-parsinglib

Ich werde einen Parser für Verilog (oder VHDL) -Sprache schreiben und eine Menge Manipulationen (Art von Transformationen) der analysierten Daten vornehmen. Ich beabsichtige, wirklich große Dateien zu analysieren (vollständige Verilog-Designs, bis zu 10K-Zeilen), und ich werde letztendlich den größten Teil des Verilog unterstützen. Es macht mir nichts aus, zu tippen, aber ich möchte keinen Teil des Codes neu schreiben, wenn ich Unterstützung für eine andere Regel hinzufüge.

Welche Bibliothek in Haskell würden Sie empfehlen? Ich kenne Haskell und habe Happy schon einmal benutzt (um zu spielen). Ich habe das Gefühl, dass es bei der Verwendung von Parsec Möglichkeiten gibt, die analysierte Zeichenfolge im Code zu transformieren (was ein großes Plus ist). Ich habe keine Erfahrung mit UU-Paringlib.

Um also eine vollständige Grammatik von Verilog / VHDL zu analysieren, welche davon wird empfohlen? Mein Hauptanliegen ist die Leichtigkeit und "Korrektheit", mit der ich die analysierten Daten nach Belieben manipulieren kann. Geschwindigkeit ist kein Hauptanliegen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage