<div dir="auto"><div><br><div class="gmail_quote"><div dir="ltr">2018年6月21日(木) 1:59 Serhiy Storchaka <<a href="mailto:storchaka@gmail.com">storchaka@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">20.06.18 18:42, INADA Naoki пише:<br>
> First of all, thank you Jeroen for writing nice PEPs.<br>
> <br>
> When I read PEP 579, I think "6. METH_FASTCALL is private and undocumented"<br>
> should be solved first.<br>
> <br>
> I don't have any idea about changing METH_FASTCALL more.<br>
> If Victor and Serhiy think so, and PyPy maintainers like it too, I want <br>
> to make it public<br>
> as soon as possible.<br>
<br>
I don't have objections against making the METH_FASTCALL method calling <br>
convention public. But only for positional-only parameters, the protocol <br>
for keyword parameters is more complex and still can be changed.<br>
<br>
We should to provide also APIs for calling functions using this protocol <br>
(_PyObject_FastCall) and for parsing arguments (_PyArg_ParseStack). We <br>
may want to bikeshed names and the order of arguments for them.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Calling API can be determined later.  Even without the API, methods can be called faster from Python core.</div><div dir="auto"><br></div><div dir="auto">But for parsing API, you're right. It should be public with METH_FASTCALL. Only positional arguments can be received without it.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
</blockquote></div></div></div>