First of all, great work, Daniel ! I'm confident that making the "lambdas"
be "closures" in Groovy is enough. I stated it in the past but I'm going to
repeat myself here, I don't think having 2 syntax for "closures/lambdas"
with slightly different semantics would help our users/language. That said,
the static compiler can do better, doing escape analysis, and using "real"
lambdas when the target bytecode is 8, as an optimization.

2016-10-19 3:29 GMT+02:00 Jochen Theodorou <blackd...@gmx.org>:

>
> (a) I think it would be ok if the new parser is only usable if java8 is
> used as long as it is not the default. If for example 2.5.0 is going out
> with the old parser as default, then I see no problem in delivering 2.5.0
> with a new parser, that will work only with java8.
>
>
I'm not as ok as you are for 2 reasons:

1. we have no evidence that using the new parser doesn't introduce a
performance regression in compile time. We have the "performance"
subproject to help here.
2. it would mean adding a dependency on antlr4 for all users even if they
don't use the new grammar, unless we produce new artifacts. And given the
number of variants we already produce, I'm not sure it's a good idea.

Reply via email to