2012-12-16 3 views
7

Was sollte ich von ANTLR 4 erwarten?Ist ANTLR 4 schneller als ANTLR 3?

Ist es schneller ANTLR 3? Ich meine die Parsing-Geschwindigkeit.
Hinweis Code-Generierung Geschwindigkeit wäre auch interessant.

Aus Designgründen?

Antwort

8

Zuerst der einfache Teil - das ANTLR 4-Tool führt nur eine minimale Analyse der Grammatik durch und muss insbesondere nicht die DFA-Tabellen wie ANTLR 3 statisch berechnen. Als solches ist es viel, viel schneller als ANTLR 3 zum Erzeugen von Parsern.

Die ursprüngliche 4.0-Version von ANTLR 4 variiert von etwas schneller als ANTLR 3 bis viel langsamer als es, abhängig von der Grammatik und Eingabe. ANTLR 4 kann jedoch viele Grammatiken und Eingaben verarbeiten, die ANTLR 3 einfach nicht verarbeiten kann. Darüber hinaus ist eine optimierte Version der ANTLR 4 Runtime, die ANTLR 3 deutlich übertrifft, bereits in der Entwicklung.

Debugging-Hilfen und How-To-Dokumentation kommt, die Benutzern hilft, Performance-Probleme im Zusammenhang mit Grammatik-Design zu finden und zu korrigieren (oder zu vermeiden). Ich glaube, dass einige davon auch im Buch ANTLR 4 verfügbar sind.

+0

@ Clueless https://github.com/sharwell/antlr4/releases/latest –