(original) (raw)
2018年6月21日(木) 1:59 Serhiy Storchaka <storchaka@gmail.com>:
20.06.18 18:42, INADA Naoki пише:
\> First of all, thank you Jeroen for writing nice PEPs.
\>
\> When I read PEP 579, I think "6\. METH\_FASTCALL is private and undocumented"
\> should be solved first.
\>
\> I don't have any idea about changing METH\_FASTCALL more.
\> If Victor and Serhiy think so, and PyPy maintainers like it too, I want
\> to make it public
\> as soon as possible.
I don't have objections against making the METH\_FASTCALL method calling
convention public. But only for positional-only parameters, the protocol
for keyword parameters is more complex and still can be changed.
We should to provide also APIs for calling functions using this protocol
(\_PyObject\_FastCall) and for parsing arguments (\_PyArg\_ParseStack). We
may want to bikeshed names and the order of arguments for them.
Calling API can be determined later. Even without the API, methods can be called faster from Python core.
But for parsing API, you're right. It should be public with METH\_FASTCALL. Only positional arguments can be received without it.