Downloads 18.05.2020, 00:00 Uhr

Compiler-Bau und Updates einspielen

Der Schwerpunkt bietet Generatoren für Parser und Scanner. NetSparkle aktualisiert Ihre Software.
(Quelle: dotnetpro)
Die Anwendung ist fertig und das Deployment an den Kunden abgeschlossen. Doch damit ist das Projekt nicht beendet. Meist muss die Software über Jahre hinweg gepflegt werden – sei es, weil Fehler behoben werden müssen, oder weil der Kunde nach neuen Funktionen giert. Glücklich der, der dann einen Mechanismus in die Anwendung integriert hat, der für automatische Updates sorgt.
Schwerpunkt
ANTLR

ANTLR (ANother Tool for Language Recognition) ist ein leistungsstarker Parsergenerator zum Lesen, Erstellen, Ausführen oder Übersetzen strukturierter Texte oder Binärdateien.

https://www.antlr.org
JavaCC

Java Compiler Compiler (JavaCC) ist der bekannteste Parsergenerator zur Verwendung mit Java-Anwendungen. Zusätzlich zum Parsergenerator selbst bietet JavaCC andere Standardfunktionen in Bezug auf Parsergenerierung wie z.B. Baumerstellung, Actions sowie Debugging.

https://github.com/javacc/javacc
cxsd

cxsd ist ein Streaming-XSD-Parser und XML-Parser-Generator für Node.js und TypeScript. Es lädt automatisch alle referenzierten .xsd-Dateien herunter und spuckt zwei Dateien für jeden definierten Namespace aus.

https://github.com/charto/cxsd
Booze Tools

Booze Tools soll die komplette Programmiersprachen-Entwicklungs-Workbench werden, komplett in Python 3.7 geschrieben.

https://github.com/kjosib/booze-tools
Coco/R

Coco/R ist ein Compiler-Generator, der eine attributierte Grammatik aus einer Quellsprache nimmt und einen Scanner sowie einen Parser für diese Sprache generiert.

http://ssw.jku.at/Coco/
GOLD

GOLD ist ein freies Parsing-System zum Entwickeln Ihrer eigenen Programmiersprachen, Skriptsprache und Interpreter.

http://goldparser.org
SableCC

SableCC ist ein Parsergenerator, mit dem Sie objekt-orientierte Frameworks zum Erstellen von Compilern, Interpretern und anderen Text-Parsern erzeugen.

http://sablecc.org
SLK Parser Generator

SLK ist der einzige Parsergenerator sowohl für LL(k) als auch LR(k). In beiden wird die gleiche Syntax verwendet, wodurch es einfach ist, zwischen top-down und bottom-up Parsing zu wechseln je nach Bedarf oder Präferenz.

http://www.h8dems.com
PLY (Python Lex-Yacc)

PLY ist ein Parsing-Tool, das komplett in Python geschrieben ist. Es ist eine grundlegende Re-Implementierung von Lex und Yacc, das ursprünglich in C implementiert ist.

http://dabeaz.com/ply/
Irony

Irony ist ein Parser Generator Framework für die Sprachimplementierung auf der .NET-Plattform. Im Gegensatz zu den meisten bestehenden yacc/lex-Style Lösungen, verwendet es keine Codegenerierung eines Scanners/Parsers aus Grammatiken geschrieben in einer DSL. Die Grammatik der Zielsprache wird in C# beschrieben.

https://github.com/IronyProject/
Grammatica

Grammatica ist ein C#- und Java-Parsergenerator (compiler compiler)

https://grammatica.percederberg.net
Bison

Bison ist ein universeller Parser-Generator zum Konvertieren einer kommentierten kontext-freien Grammatik in einen deterministischen LR oder generalisierten LR (GLR) Parser unter Verwendung von LALR(1) Parsertabellen. Als experimentelles Feature kann Bison auch IELR(1) oder kanonische LR(1) Parsertabellen generieren.

https://www.gnu.org/software/bison/
JFLAP

JFLAP ist eine Software zum Experimentieren mit Topics formaler Sprachen einschließlich nondeterministic Finite Automaten, nondeterministic Pushdown Automaten, multi-tape Turing Machines, verschiedene Arten von Grammatiken, Parsing, sowie L-Systeme.

http://www.jflap.org
ecsharp

Enhanced C# ist eine Programmiersprache, die rückwärts-kompatibel ist mit C#. Aktuell ist nur das Front-end von EC# komplett; dieses Front-end ist bekannt als LeMP. LeMP kann jede Programmiersprache unterstützen, für die ein Parser und Drucker geschrieben wurden basierend auf Loyc-Strukturen.

http://ecsharp.net
DAGE

Desktop Antlr Grammar Editor

https://github.com/KvanTTT/DAGE

Jetzt 1 Monat kostenlos testen!

Sie wollen zukünftig auch von den Vorteilen eines plus-Abos profitieren? Werden Sie jetzt dotnetpro-plus-Kunde.
  • + Digitales Kundenkonto,
  • + Zugriff auf das digitale Heft,
  • + Zugang zum digitalen Heftarchiv,
  • + Auf Wunsch: Weekly Newsletter,
  • + Sämtliche Codebeispiele im digitalen Heftarchiv verfügbar