At 06:24 PM 8/24/04 -0400, Raymond Hettinger wrote:
Like metaclasses, everyone knew they were powerful when they were put in, but no one knew how they would be used or whether they were necessary. In fact, two versions later, we still don't know those answers.
The people who've been using metaclasses since Python 1.5 (including e.g., the Zope developers) would probably disagree. (Metaclasses got an upgrade in capabilities due to type/class unification, plus a more convenient syntax in 2.2, but they were around long before that.)
Similarly, there are plenty of "pyoneers" with use cases today for decorators, and they know how they're being used today, and that an improved syntax is necessary.
I'd point to the fact that there has been *very* little argument among decorator proponents regarding the desired semantics, as an indication that we *do* know what capabilities are necessary and/or desirable.
(By decorator proponents, I mean people who have developed and use their own decorators, who have spoken in favor of having PEP 318 implemented for 2.4. That is, people interested enough in the functionality to have used the current syntax to get them.)