Some more decorator examples. How to create abstract methods using an @absractmethod decorator: http://www.brpreiss.com/books/opus7/html/page117.html
Generics, property getters and setters. I don't know what these decorators are supposed to do: http://www.cis.upenn.edu/~edloper/pydecorators.html - And according to this, http://www.prothon.org/pipermail/prothon-user/2004-August/003173.html, one use of decorators is to put a functions docstring before the def f(): line like this: @doc("""blabla does something.""") def blabla(): Here is one decorator for optimizing: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/277940 I think the essence of decorators is that it makes it possible to do in Python what you in other languages do with method qualifiers. This declaration in Java public synchronized static void doStuff() would you write in Python as @public @synchronized @staticmethod def doStuff(): I haven't seen an example of a @synchronized decorator, but I assume it is possible. Hopefully, it is possible to create a @private decorator which throws some kind of exception when a private method is accessed from outside the class. If that is possible, then it would also be nice to have a @public decorator which doesn't do anything. As far as I know, only two decorators are included in the standard library in Python 2.4, @staticmethod and @classmethod. That is a little unfortunate, because many more "obvious ones" could have been included. The devs are probably planning to correct that in the coming versions. That is all I know about decorators. Or rather THINK I know from reading stuff on the internet. Please don't flame me if I'm wrong. :) -- mvh Björn -- http://mail.python.org/mailman/listinfo/python-list