I find antlr4 parser parses *big* files much slower than antlr2 parser, unfortunately nextflow project contains quite a few big files...
One of reasons is antlr2 uses LL(k) and antlr4 uses ALL. As we know, LL(k) will look ahead *limited* count of tokens, but ALL will look ahead *unlimited* count of tokens... I am trying to tweak rules to reduce looking ahead, but we have to admit that Groovy's grammar contains ambiguities, one of main reasons is parenthesis-less... As a user, I like it, but as a developer, I hate it... Cheers, Daniel.Sun ----- Apache Groovy committer & PMC member Blog: http://blog.sunlan.me Twitter: @daniel_sun -- Sent from: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html