<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Thu, Oct 13, 2016 at 11:59 PM Paul Moore <<a href="mailto:p.f.moore@gmail.com">p.f.moore@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 13 October 2016 at 21:47, אלעזר <<a href="mailto:elazarg@gmail.com" class="gmail_msg" target="_blank">elazarg@gmail.com</a>> wrote:<br class="gmail_msg">
> if you allow result.append(1, 2, 3) to mean result.extend([1,2,3])  # which<br class="gmail_msg">
> was discussed before<br class="gmail_msg">
<br class="gmail_msg">
I don't (for the reasons raised before). But thank you for your<br class="gmail_msg">
explanation, it clarifies what you were proposing. And it does so<br class="gmail_msg">
within the *current* uses of the * symbol, which is good. But:<br class="gmail_msg">
<br class="gmail_msg">
1. I'm not keen on extending append's meaning to overlap with extend's<br class="gmail_msg">
like this.<br class="gmail_msg">
2. Your proposal does not generalise to generator expressions, set<br class="gmail_msg">
displays (without similarly modifying the set.add() method) or<br class="gmail_msg">
dictionary displays.<br class="gmail_msg">
3. *fn(x) isn't an expression, and yet it *looks* like it should be,<br class="gmail_msg">
and in the current syntax, an expression is required in that position.<br class="gmail_msg">
To me, that suggests it would be hard to teach. [1]<br class="gmail_msg">
<br class="gmail_msg">
You can of course generalise Sjoerd's "from" proposal and then just<br class="gmail_msg">
replace "from" with "*" throughout. That avoids your requirement to<br class="gmail_msg">
change append, but at the cost of the translation no longer being a<br class="gmail_msg">
parallel to an existing use of "*".<br class="gmail_msg">
<br class="gmail_msg"></blockquote><div><br></div><div>I think it is an unfortunate accident of syntax, the use of "yield from foo()" instead of "yield *foo()". These "mean" the same: a syntactic context that directly handles iterable as repetition, (with some guarantees regarding exceptions etc.). Alternatively, we could be writing [1, 2, from [3, 4], 5, 6]. Whether it is "from x" or "*x" is just an accident. In my mind.</div><div><br></div><div>As you said, the proposal should be written in a much more formal way, so that it could be evaluated without confusion. I completely agree.</div><div><br></div><div>Elazar</div></div></div>