On Feb 6, 4:59 pm, "Diez B. Roggisch" <[EMAIL PROTECTED]> wrote: > [EMAIL PROTECTED] schrieb: > > > > > > > def run3( block ): > > for _ in range( 3 ): > > block() > > > run3(): > > normal_suite() > > > Introduces new syntax; arbitrary functions can follow 'colon'. > > > Maintains readability, meaning is consistent. > > > Equivalent to: > > > def run3( block ): > > for _ in range( 3 ): > > block() > > > @run3 > > def anonfunc(): > > normal_suite() > > > Simplification in cases in which decorators are use often. > > This is non-sensical - how do you invoke anonfunc? They would all bind > to the same name, run3. Or to no name as all, as your "spec" lacks that. > > Besides, it's butt-ugly IMHO. But taste comes after proper definition... > > Diez- Hide quoted text - > > - Show quoted text -
The fallacy here is that @run3 as described is not a typical decorator, such one that returns a function. It is called at "definition"-time, that is, when the function definition is executed, and executes the code. -- http://mail.python.org/mailman/listinfo/python-list