[Python-Dev] PEP 399: Pure Python/C Accelerator Module Compatibiilty Requirements
Nick Coghlan
ncoghlan at gmail.com
Wed Apr 6 16:08:45 CEST 2011
On Wed, Apr 6, 2011 at 5:57 AM, Raymond Hettinger
<raymond.hettinger at gmail.com> wrote:
> [Brett]
>> This PEP requires that in these instances that both
>> the Python and C code must be semantically identical
>
> Are you talking about the guaranteed semantics
> promised by the docs or are you talking about
> every possible implementation detail?
>
> ISTM that even with pure python code, we get problems
> with people relying on implementation specific details.
Indeed.
Argument handling is certainly a tricky one - getting positional only
arguments requires a bit of a hack in pure Python code (accepting
*args and unpacking the arguments manually), but it comes reasonably
naturally when parsing arguments directly using the C API.
As another example where these questions will arise (this time going
the other way) is that I would like to see a pure-Python version of
partial added back in to functools, with the C version becoming an
accelerated override for it.
Cheers,
Nick.
--
Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
More information about the Python-Dev
mailing list