Confused with methods

Antoon Pardon apardon at forel.vub.ac.be
Mon Feb 7 10:32:41 EST 2005


Op 2005-02-07, John Lenton schreef <john at grulic.org.ar>:
>
>
> --cvVnyQ+4j833TQvp
> Content-Type: text/plain; charset=us-ascii
> Content-Disposition: inline
> Content-Transfer-Encoding: quoted-printable
>
> On Mon, Feb 07, 2005 at 02:53:49PM +0000, Antoon Pardon wrote:
>> The fact that a function in a class performs a lot of magic if
>> it is called through an instance, that isn't performed otherwise,
>> makes python inconsistent here. You may like the arrangement
>> (and it isn't such a big deal IMO) but that doesn't make it consistent.
>
> I vote for accepting the fact (it goes with the "practicality beats
> purity" bit,

But before one can produce the "practicality beats purity" argument,
one has to accept this isn't pure. That was all I was saying here,
python is not consistent/pure here. Now there can be good arguments
to have this that offset the inconsistency, but the python people
shouldn't then try to argue that it is consistent anyway.

> because otherwise all our methods would have to start
> with an @instancemethod). This doesn't justify (IMVVHO) a new keyword,
> like you (was it you?) seemed to imply (do you really mean for
> instancemethod (or somesuch) and classmethod to become keywords?). I
> think it's fine the way it is: there's an implicit @instancemethod,
> and @staticmethod (which you'd have be the default if I read you
> right) has to be explicit, when in classes.

I'm not saying I would have it so, I'm saying that would be the
pure/consistent way to do it.

-- 
Antoon Pardon



More information about the Python-list mailing list