Elsignment? — Jeff
> On Nov 23, 2016, at 4:30 PM, Daniel Sun <[email protected]> wrote: > > I like the nickname "Elvis assignment" for ?= > > Cheers, > Daniel.Sun > > > > 在 2016年11月24日 04:18,"Guillaume Laforge [via Groovy]" <ml-node+[hidden email] > <x-msg://14/user/SendEmail.jtp?type=node&node=5736970&i=0>>写道:<br type="att > Sounds about right. > > On Wed, Nov 23, 2016 at 9:07 PM, Shil Sinha <[hidden email] > <x-msg://14/user/SendEmail.jtp?type=node&node=5736959&i=0>> wrote: > Elvis assignment? > > On Wed, Nov 23, 2016 at 1:47 PM Andres Almiray <[hidden email] > <x-msg://14/user/SendEmail.jtp?type=node&node=5736959&i=1>> wrote: > Long live pompaduor walrus ... > > What would be an appropriate nickname for ?=, I wonder. > > ------------------------------------------- > Java Champion; Groovy Enthusiast > http://jroller.com/aalmiray <http://jroller.com/aalmiray> > http://www.linkedin.com/in/aalmiray <http://www.linkedin.com/in/aalmiray> > -- > What goes up, must come down. Ask any system administrator. > There are 10 types of people in the world: Those who understand binary, and > those who don't. > To understand recursion, we must first understand recursion. > > On Wed, Nov 23, 2016 at 7:35 PM, Paul King <[hidden email] > <x-msg://14/user/SendEmail.jtp?type=node&node=5736959&i=2>> wrote: > For all our other operators of the form: > > a X= b > > it is shorthand for: > > a = a X b > > So, to follow that convention the operator is: > > a ?:= b > > which as per previous discussions is a bit cumbersome, so I am +1 for > the shortened form so long as we document appropriately. > > Paul. > > > On Thu, Nov 24, 2016 at 3:54 AM, Gerald Wiltse <[hidden email] > <x-msg://14/user/SendEmail.jtp?type=node&node=5736959&i=3>> wrote: > > +1 > > > > Gerald R. Wiltse > > [hidden email] <x-msg://14/user/SendEmail.jtp?type=node&node=5736959&i=4> > > > > > > On Wed, Nov 23, 2016 at 12:28 PM, Winnebeck, Jason > > <[hidden email] <x-msg://14/user/SendEmail.jtp?type=node&node=5736959&i=5>> > > wrote: > >> > >> At first I was going to vote 0, because I feel like a = a ?: b is clear > >> (and I compare it to a = a || b from JS). However, looking at the dev list, > >> I definitely see a nice case for it: > >> > >> person.name.last = person.name.last ?: "unknown" > >> > >> When you have a non-trivial assignment expression, I see the benefit: > >> > >> person.name.last ?= "unknown" > >> > >> However, I feel like it is not intuitive or clear. But, I don't think the > >> operator hurts, and it's certainly not any less intuitive than <=> for > >> example or even ?: when seen for the very first time. It's an easy look up > >> in Groovy docs, and if you don't know it and don't use it, it's not a huge > >> loss. So it doesn't hurt to add it, and while not instantly readable, it's > >> a > >> trivial docs lookup when someone is reading the code. > >> > >> So, I vote +1. But, honestly, I don't see myself using it very often as > >> I'd normally use Elvis at time of initial assignment. I wouldn't put it > >> very > >> high on a prioritized backlog of things to improve for Groovy. > >> > >> Jason > >> > >> -----Original Message----- > >> From: Daniel Sun [mailto:[hidden email] > >> <x-msg://14/user/SendEmail.jtp?type=node&node=5736959&i=6>] > >> Sent: Wednesday, November 23, 2016 10:59 AM > >> To: [hidden email] > >> <x-msg://14/user/SendEmail.jtp?type=node&node=5736959&i=7> > >> Subject: [VOTE] new operator ?= > >> > >> Hi all, > >> > >> If the new operator ?= (e.g. a ?= 'foo' is equivalent of a = a ?: > >> 'foo') were to be added to Groovy programming language, do you like it? > >> (Yes: +1; No: -1; Not bad: 0) > >> > >> Cheers, > >> Daniel.Sun > >> > >> > >> > >> -- > >> View this message in context: > >> http://groovy.329449.n5.nabble.com/VOTE-new-operator-tp5736931.html > >> <http://groovy.329449.n5.nabble.com/VOTE-new-operator-tp5736931.html> > >> Sent from the Groovy Users mailing list archive at Nabble.com. > >> > >> This email message and any attachments are for the sole use of the > >> intended recipient(s). Any unauthorized review, use, disclosure or > >> distribution is prohibited. If you are not the intended recipient, please > >> contact the sender by reply email and destroy all copies of the original > >> message and any attachments. > > > > > > > > > -- > Guillaume Laforge > Apache Groovy committer & PMC Vice-President > Developer Advocate @ Google Cloud Platform > > Blog: http://glaforge.appspot.com/ <http://glaforge.appspot.com/> > Social: @glaforge <http://twitter.com/glaforge> / Google+ > <https://plus.google.com/u/0/114130972232398734985/posts> > > If you reply to this email, your message will be added to the discussion > below: > http://groovy.329449.n5.nabble.com/VOTE-new-operator-tp5736931p5736959.html > <http://groovy.329449.n5.nabble.com/VOTE-new-operator-tp5736931p5736959.html> > To unsubscribe from [VOTE] new operator ?=, click here > <applewebdata://74EE9B77-5B71-459C-9927-CCBCA5601822>. > 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: [VOTE] new operator ?= > <http://groovy.329449.n5.nabble.com/VOTE-new-operator-tp5736931p5736970.html> > Sent from the Groovy Users mailing list archive > <http://groovy.329449.n5.nabble.com/Groovy-Users-f329450.html> at Nabble.com.
