[Python-ideas] Default decorator?
Tony Lownds
tony at PageDNA.com
Thu Jan 17 02:16:37 CET 2008
On Jan 16, 2008, at 4:31 PM, Guido van Rossum wrote:
> Peter Norvig suggested an idea to me over lunch: a "default
> decorator". This would be something you could set once per module and
> it would be invoked for each function definition in the same way as a
> decorator is invoked, before any explicit decorators. His use case was
> something that wraps every function that uses argument annotations
> with something that interprets those annotations in a certain way and
> enforces that interpretation. It would save having to explicitly
> annotate every function or method that way.
>
> Thoughts? I suggested that a metaclass could do this for methods, but
> that of course leaves plain functions in the lurch.
Great idea. +1 on a "default decorator".
Like the global __metaclass__, I'd hope that it could apply to functions
nested in classes, but not functions nested in functions.
A lot of the same reasons for __metaclass__ apply to __decorator__:
"The potential uses for metaclasses are boundless. Some ideas that have
been explored including logging, interface checking, automatic
delegation,
automatic property creation, proxies, frameworks, and automatic resource
locking/synchronization."
http://docs.python.org/ref/metaclasses.html
-Tony
More information about the Python-ideas
mailing list