[Python-ideas] Tweaking closures and lexical scoping to include the function being defined
Carl Matthew Johnson
cmjohnson.mailinglist at gmail.com
Fri Sep 30 05:45:32 CEST 2011
On Sep 29, 2011, at 5:35 PM, Ron Adam wrote:
> @set_closure(x=0)
> def adder(y):
> nonlocal x
> x += y
> return x
Won't work as written because the nonlocal will cause an error before the decorator is applied.
The other day, I suggested we add the ability for decorators to have a __prepare__ method that creates the namespace the function being created will use, but it was shot down as impractical. It would however do what you want to do here.
More information about the Python-ideas
mailing list