Cool, i got it now... accessing thru attribute reference always returns a bound or unbound method... so, D.f is an unbound method whereas i want the "function" of the unbound method... ok,.... this example and the nice explanations definitively thought me about function, bound method (for which the function is just an attribute accessed by im_func) and unbound method... Also, calling classmethod on an unbound method instead of a function is a strict no... no... ok... nice concept...
But, i am at loss when i come to clearly understanding the difference between new-style classes and classic classes.... (or should i post it as new topic?)..... -- http://mail.python.org/mailman/listinfo/python-list