Calvin Spealman <ironfroggy <at> socialserve.com> writes:
> 
> staticmethod doesn't wrap anything, it just creates a descriptor on  
> the class with a __get__ that returns the original, untouched  
> callable. Doesn't even care _what_ the thing you use it on is  
> (function, other callable, or something else entirely.)

FWIW, I still disagree. Technically, it might not "wrap" anything (in the sense
that it isn't defined as a function returning another function - which is a
narrow definition of a wrapper by the way), but semantically it does. To the
non-expert programmer, it is a decorator like any other one. The fact that it is
implemented differently from other decorators is not an excuse for it to follow
different rules...

Unless, of course, there is a good *semantic* reason for staticmethod not to
mirror the __module__ attribute.

(by the way, does the same apply to classmethod as well?)

Regards

Antoine.


_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to