Skip to content

Antlr dependencies and versions #2794

Closed Answered by szarnekow
merks asked this question in Q&A
Discussion options

You must be logged in to vote

The Xtext parser uses internal state of the Antlr parser to drive content assist proposals. Even tiny changes to the way that state is being maintained or tiny changes in the code generation templates that Antlr uses, might cause severe regressions. That's why the dependency is pinned to the seemingly old version 3.2.0.

Antlr 4 uses a complete different parsing mechanism which does essentially drop the idea of static ambiguity analysis. That's something we didn't want to loose. Performance experiments based on rather complex grammars did also show some regressions compared to Antlr 3. So a migration from 3 to 4 wasn't a trivial exercise and there was no clear benefit from doing so.

Replies: 2 comments

Comment options

You must be logged in to vote
0 replies
Answer selected by szarnekow
Comment options

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants