groovy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Guillaume Laforge <glafo...@gmail.com>
Subject Re: Lambda expression for Groovy 3
Date Tue, 18 Oct 2016 20:46:08 GMT
I assumed so, but wanted to be sure :-)

On Tue, Oct 18, 2016 at 10:35 PM, Remi Forax <forax@univ-mlv.fr> wrote:

> I would say Groovy Closure with the Java syntax.
>
> Rémi
>
> On October 18, 2016 8:21:34 PM GMT+02:00, Guillaume Laforge <
> glaforge@gmail.com> wrote:
>>
>> Is it actually Groovy closures? or "real" Java lambdas?
>>
>> On Tue, Oct 18, 2016 at 7:42 PM, Jochen Theodorou <blackdrag@gmx.org>
>> wrote:
>>
>>>
>>> hah, I knew you can do it ;)
>>>
>>> On 18.10.2016 18:34, daniel_sun wrote:
>>>
>>>> Jochen, lambda expression is fully supported now :)
>>>>
>>>> https://github.com/danielsun1106/groovy-parser/commit/c380e4
>>>> 230ecef350855b9f56a220411635a7ff87
>>>>
>>>> https://github.com/danielsun1106/groovy-parser/blob/master/s
>>>> rc/test/resources/core/Lambda_01x.groovy
>>>>
>>>>
>>>> Cheers,
>>>> Daniel.Sun
>>>>
>>>>
>>>>
>>>> 在 "Jochen Theodorou [via Groovy]" <ml-node+[hidden email]
>>>> </user/SendEmail.jtp?type=node&node=5736176&i=0>>,2016年10月18日
00:37
>>>>
>>>> 写道:
>>>>
>>>>
>>>>
>>>>     On 17.10.2016 17:40, daniel_sun wrote:
>>>>      > Hi all,
>>>>      >
>>>>      >        Lambda expression for Groovy has been completed with a
>>>> little
>>>>      > limitation, which is due to the existing closure whose parameter
>>>>     list can be
>>>>      > ambiguous to lambda expression, e.g. {a -> a} which can be parsed
>>>>     as a
>>>>      > lambda expression in a block, but we expect it a closure.
>>>>
>>>>     I think that limitation is ok
>>>>
>>>>      > In order to
>>>>      > resolve the ambiguities, the parentheses for parameters is a
>>>>     must, e.g.
>>>>      > *Java8* allows parentheses-less parameter for lambda when the
>>>>     parameter is
>>>>      > single and without type: e -> e, but *Groovy* only allows
>>>>     parameter with
>>>>      > parentheses: (e) -> e.
>>>>      >
>>>>      >        *Here are some examples for lambda expression for Groovy:*
>>>>      > assert 9 == [1, 2, 3].stream().map((e) -> e + 1).reduce(0, (r,
e)
>>>>     -> r + e)
>>>>
>>>>     which means you cannot write
>>>>      > assert 9 == [1, 2, 3].stream().map(e -> e + 1).reduce(0, (r,
e)
>>>>     -> r + e)
>>>>
>>>>     which I find not so ok. Here again it would be no problem if it is
>>>>     recognized as Closure if that is more easy to accomplish.
>>>>
>>>>     bye Jochen
>>>>
>>>>
>>>>     ------------------------------------------------------------
>>>> ------------
>>>>     If you reply to this email, your message will be added to the
>>>>     discussion below:
>>>>     http://groovy.329449.n5.nabble.com/Lambda-expression-for-Gro
>>>> ovy-3-tp5736169p5736171.html
>>>>
>>>>     To unsubscribe from Lambda expression for Groovy 3, click here.
>>>>     NAML
>>>>     <http://groovy.329449.n5.nabble.com/template/NamlServlet.jtp
>>>> ?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&
>>>> base=nabble.naml.namespaces.BasicNamespace-nabble.view.
>>>> web.template.NabbleNamespace-nabble.view.web.template.
>>>> NodeNamespace&breadcrumbs=notify_subscribers%21nabble%
>>>> 3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_
>>>> instant_email%21nabble%3Aemail.naml>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------
>>>> ------------
>>>> View this message in context: Re: Lambda expression for Groovy 3
>>>> <http://groovy.329449.n5.nabble.com/Lambda-expression-for-Gr
>>>> oovy-3-tp5736169p5736176.html>
>>>> Sent from the Groovy Dev mailing list archive
>>>> <http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html> at
>>>> Nabble.com.
>>>>
>>>
>>>
>>
>>
>> --
>> Guillaume Laforge
>> Apache Groovy committer & PMC Vice-President
>> Developer Advocate @ Google Cloud Platform
>>
>> Blog: http://glaforge.appspot.com/
>> Social: @glaforge <http://twitter.com/glaforge> / Google+
>> <https://plus.google.com/u/0/114130972232398734985/posts>
>>
>
> --
> Sent from my Android device with K-9 Mail. Please excuse my brevity.
>



-- 
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform

Blog: http://glaforge.appspot.com/
Social: @glaforge <http://twitter.com/glaforge> / Google+
<https://plus.google.com/u/0/114130972232398734985/posts>

Mime
View raw message