groovy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Milles, Eric (TR Tech, Content & Ops)" <eric.mil...@thomsonreuters.com>
Subject Re: About polish the generics type syntax for closure
Date Wed, 13 Feb 2019 15:53:14 GMT
I agree Closure cannot be replaced/emulated completely.  And Function is not universally applicable
either.  But the universe of SAM types is much bigger than Function alone.


Your proposed syntax does not appear to cover much more than Function would.  And it would
introduce a lot of effort for reader and tool builder as well.  Groovy/Java developer already
has to be aware of closure literal and lambda literal syntax.  Your proposal adds a third
possibility when reader encounters "->" in source.


My general point is that there are a number of options that are available today.  Most can
also be used by Java or Kotlin code that offers some Groovy support/interop.  Groovy-only
syntax is not as widely applicable and would not be available for some time.  My opinion is
that there is little benefit to the new syntax and a lot of potential cost.


________________________________
From: Daniel.Sun <sunlan@apache.org>
Sent: Wednesday, February 13, 2019 8:07 AM
To: dev@groovy.incubator.apache.org
Subject: Re: About polish the generics type syntax for closure

Thanks for your suggestion.

If the argument type is Function and the parameter type is Closure, implicit
coerce will happen, thus the performance will be impacted somehow. Certainly
we can use native lambda to avoid the performance issue.
In addition, Function accepts only one parameter, a bit limited for general
scenarios.

In short, Closure can not be replaced completely.

Cheers,
Daniel.Sun




-----
Apache Groovy committer
Blog: https://urldefense.proofpoint.com/v2/url?u=http-3A__blog.sunlan.me&d=DwICAg&c=4ZIZThykDLcoWk-GVjSLmy8-1Cr1I4FWIvbLFebwKgY&r=tPJuIuL_GkTEazjQW7vvl7mNWVGXn3yJD5LGBHYYHww&m=OEzRyWh0ecDlHuHykn040knCc4zWHNNZDEWY-2anHm8&s=UpwOkqNP45mAdUSjnCO-aR_PyQrVLRKFSrEyUIQSqRY&e=
Twitter: @daniel_sun

--
Sent from: https://urldefense.proofpoint.com/v2/url?u=http-3A__groovy.329449.n5.nabble.com_Groovy-2DDev-2Df372993.html&d=DwICAg&c=4ZIZThykDLcoWk-GVjSLmy8-1Cr1I4FWIvbLFebwKgY&r=tPJuIuL_GkTEazjQW7vvl7mNWVGXn3yJD5LGBHYYHww&m=OEzRyWh0ecDlHuHykn040knCc4zWHNNZDEWY-2anHm8&s=YwSwy0HdBm2CKcJaoqan8AoB-csth7-8vS6qutDbwt0&e=

Mime
View raw message