<div dir="ltr">Yes, that's exactly right.  It does not affect the callee.<div><br></div><div>Regarding function call performance, nothing has changed for the originally accepted argument lists: the opcodes generated are the same and they are processed in the same way.</div><div><br></div><div>Also, regarding calling argument order, not any order is allowed.  Regular arguments must precede other kinds of arguments.  Keyword arguments must precede **-args.  *-args must precede **-args.   However, I agree with Antoine that PEP 8 should be updated to suggest that *-args should precede any keyword arguments.  It is currently allowed to write f(x=2, *args), which is equivalent to f(*args, x=2).</div><div><br></div><div>Best,</div><div><br></div><div>Neil<br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 9, 2015 at 7:30 PM, Larry Hastings <span dir="ltr"><<a href="mailto:larry@hastings.org" target="_blank">larry@hastings.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div><br>
      <br>
      What's an example of a way inspect.signature must change?  I
      thought PEP 448 added new unpacking shortcuts which (for example)
      change the *caller* side of a function call.  I didn't realize it
      impacted the *callee* side too.<br>
      <br>
      <br>
      <i>/arry</i><br>
      <br>
      On 02/09/2015 03:14 PM, Antoine Pitrou wrote:<br>
    </div>
    <blockquote type="cite">
      <pre>On Tue, 10 Feb 2015 08:43:53 +1000
Nick Coghlan <a href="mailto:ncoghlan@gmail.com" target="_blank"><ncoghlan@gmail.com></a> wrote:
</pre>
      <blockquote type="cite">
        <pre>For example, the potential for arcane call arguments suggests the need for
a PEP 8 addition saying "first standalone args, then iterable expansions,
then mapping expansions", even though syntactically any order would now be
permitted at call time.
</pre>
      </blockquote>
      <pre>There are other concerns:

- inspect.signature() must be updated to cover the new call
  possibilities

- function call performance must not be crippled by the new
  possibilities

Regards

Antoine.


_______________________________________________
Python-Dev mailing list
<a href="mailto:Python-Dev@python.org" target="_blank">Python-Dev@python.org</a>
<a href="https://mail.python.org/mailman/listinfo/python-dev" target="_blank">https://mail.python.org/mailman/listinfo/python-dev</a>
Unsubscribe: <a href="https://mail.python.org/mailman/options/python-dev/larry%40hastings.org" target="_blank">https://mail.python.org/mailman/options/python-dev/larry%40hastings.org</a>
</pre>
    </blockquote>
    <br>
  </div>

<br>_______________________________________________<br>
Python-Dev mailing list<br>
<a href="mailto:Python-Dev@python.org">Python-Dev@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-dev" target="_blank">https://mail.python.org/mailman/listinfo/python-dev</a><br>
Unsubscribe: <a href="https://mail.python.org/mailman/options/python-dev/mistersheik%40gmail.com" target="_blank">https://mail.python.org/mailman/options/python-dev/mistersheik%40gmail.com</a><br>
<br></blockquote></div><br></div></div></div>