[Python-Dev] Re: PEP 318: Can't we all just get along? (original) (raw)

Bob Ippolito bob at redivi.com
Thu Aug 19 22:55:04 CEST 2004


On Aug 19, 2004, at 4:09 PM, Jp Calderone wrote:

Bob Ippolito wrote:

class Foo(object): metaclass = Bar ... is much different than class Foo(object): ... Foo = barEquivalentFunction(Foo) which is the same as @barEquivalentFunction class Foo(object): ... Only if you choose to write it such that it is different. Either can result in effects that persist down the inheritence tree, and either can result in effects that do not.

Of course, but my point is that it's default behavior for the "Bar" metaclass to become part of the inheritance graph, where default behavior for "barEquivalentFunction" wouldn't ever do such a thing.
Actually, aside from returning a different class object altogether, the only thing I can imagine "barEquivalentFunction" doing that would affect the inheritance graph is to mutate bases, which is just crazy.

-bob



More information about the Python-Dev mailing list