<div dir="ltr">Wouldn't simply making array spreading ignore nullish values be backward compatible?<div>Unless one imagines that people are depending on this being an error somehow.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Feb 15, 2020 at 10:05 AM Jordan Harband <<a href="mailto:ljharb@gmail.com">ljharb@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Since object spread already ignores nullish values, a syntax change would only be needed for array spread. Then, the two kinds of spread would support different syntactic features, which seems inconsistent.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Feb 15, 2020 at 7:56 AM Beknar Askarov <<a href="mailto:beknaraskarov@gmail.com" target="_blank">beknaraskarov@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Thank you, everyone, for feedback. Sorry for not getting back for a while. I had some time to think and concluded that nullish noop in spreading is a good feature to be added to the language without complicating it too much.<br>So please take a look at <a href="https://gist.github.com/askbeka/8bb17508ec250a789ea9bff683a50e38" target="_blank">the explainer</a> and lets discuss in <a href="https://es.discourse.group/t/optional-spreading-proposal/224" target="_blank">es-discourse proposal</a>, if you have further feedback, please share</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Aug 23, 2019 at 7:18 PM Herby Vojčík <<a href="mailto:herby@mailbox.sk" target="_blank">herby@mailbox.sk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 23. 8. 2019 16:24, Beknar Askarov wrote:<br>
> @Scott Rudiger After thinking more about it.<br>
> I would not like to conflict with semantics of optional chaining and <br>
> null coalescing operator.<br>
> So in order to not confuse people, maybe introduce two types of optional <br>
> spread operators<br>
> <br>
> <br>
> 1. `?...` - Do not spread if nullish. Note nullish. Else try to spread.<br>
> Signature Array: [?...(nullish | Iterable)];<br>
> Signature Object: {?...(nullish | object)};<br>
> <br>
> 2. `!...` - Do not spread if false. Note FALSE not falsy. Else try to <br>
> spread.<br>
<br>
I read<br>
<br>
   !...foo<br>
<br>
as<br>
<br>
   !(...foo)<br>
<br>
that is, logical not. I'd tip it already works that way. In which case <br>
no go, break compat.<br>
<br>
Herby<br>
<br>
> Signature Array: [!...(false | Iterable)];<br>
> Signature Object: {!...(false | object)};<br>
> <br>
> I think this can be an option to avoid consfusion<br>
<br>
Or add a new one. :-(<br>
</blockquote></div>
</blockquote></div>
_______________________________________________<br>
es-discuss mailing list<br>
<a href="mailto:es-discuss@mozilla.org" target="_blank">es-discuss@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/es-discuss" rel="noreferrer" target="_blank">https://mail.mozilla.org/listinfo/es-discuss</a><br>
</blockquote></div>