[Python-Dev] PEP 575: Unifying function/method classes
Guido van Rossum
guido at python.org
Sat Apr 14 17:14:40 EDT 2018
On Sat, Apr 14, 2018 at 2:17 AM, Jeroen Demeyer <J.Demeyer at ugent.be> wrote:
> On 2018-04-13 21:30, Raymond Hettinger wrote:
>> It would be nice to have a section that specifically discusses the
>> implications with respect to other existing function-like tooling:
>> classmethod, staticmethod, partial, itemgetter, attrgetter, methodgetter,
> My hope is that there are no such implications. An important design goal
> of this PEP (which I believe I achieved) is that as long as you're doing
> duck typing, you should be safe. I believe that the tools in your list do
> exactly that.
> It's only when you use inspect or when you do type checks that you will
> see the difference with this PEP.
That actually sounds like a pretty big problem. I'm sure there is lots of
code that doesn't *just* duck-type nor calls inspect but uses isinstance()
to decide how to extract the desired information.
> After implementing the C code part of my PEP, there were only a relatively
> small number of test failures. You can look at this commit which contains
> all Python code changes of my implementation, it doesn't look so bad:
> For example, I would need to update the code in random._randbelow().
> For the record, there are no test failures related to this, but maybe
> that's just because tests for this are missing.
--Guido van Rossum (python.org/~guido)
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Python-Dev