I don't think it's reasonable to put the new parser in 2.5. There are too many grey areas: performance, backwards compatibility, dependencies, upgrade to Java 8... Better ship 2.5, then work hard on 3.0, even if it means delaying MOP2 to 4.0.
2016-10-20 1:52 GMT+02:00 Jochen Theodorou <blackd...@gmx.org>: > On 19.10.2016 18:11, Mario Garcia wrote: > >> Does anyone have any idea of how long is going to take the new parser to >> be ready ? It's a matter of weeks, months, maybe days? I think that >> information would help to plan future releases. >> > > I just made an experiment in which I moved the antlr2 parser in its own > sub project and the java compilation in the main project is supposed to be > done without the antlr part, by solely working on abstractions. > > Well, it turns out we have several dependencies on antlr classes in > SourceUnit, GenericsUtils and Numbers, most possibly in more parts. If we > want to be truly able to use only the new parser, then we need to clean > these things up. Especially depending on antlr exceptions looks very wrong > to me. But also this construct: > > AntlrParserPlugin plugin = new AntlrParserPlugin() { >> @Override >> public ModuleNode buildAST(final SourceUnit sourceUnit, >> final ClassLoader classLoader, final Reduction cst) throws ParserException { >> ref.set(makeTypeWithArguments(rn.getAST())); >> return null; >> } >> }; >> > > which can be found in GenericsUtils, but also in > MarkupTemplateTypeCheckingExtension. > > If we want to fix these, it surely is not a matter of a few days. We could > do without fixing these and work on having them fixed for the next 2.5 beta > release. Without fixing these the GroovyShell might get problems if you > want to use any new syntax element. > > What do others here think? > > bye Jochen > >