On 24 Jul., 11:40, Torsten Bronger <[EMAIL PROTECTED]> wrote: > Hallöchen! > > Bruno Desthuilliers writes: > > [...] > > > How would you handle this case with an implicit 'self' : > > > class Foo(object): > > pass > > > def bar(self): > > print self > > > Foo.bar = bar > > Just like this. However, the compiler could add "self" to > non-decorated methods which are defined within "class".
And $self2, $self3, ... to the object methods of nested classes and $cls2, $cls3, ... to the classmethods of those classes...? And when we are at it, here is a nice little exercise for the proponents of compiler magic. Write a decorator that takes and returns a method and prints the object the method is bound to. It's very easy to do it when the object is passed explicitely: def print_self(func): def call(self, *args, **kwd): print self return func(self, *args, **kwd) return call Conceptual clarity isn't always an entirely bad thing to have. -- http://mail.python.org/mailman/listinfo/python-list