[Python-Dev] Re: Re: Call for defense of @decorators

Walter Dörwald walter at livinglogic.de
Mon Aug 9 12:38:58 CEST 2004


Christian Tismer wrote:

> Anthony Baxter wrote:
> 
>> Mark Russell wrote:
>>
>>> I too like |.  It is not quite as visible as @, but I don't think that's
>>> a serious problem, and not breaking ipython and other tools is a big
>>> win.  I just tried implementing this change, and all the tests still
>>> pass (not a big surprise, but worth confirming I guess).
>>
>> To jump on the band-wagon - I can live with | as well. I was going to
>> add it to the PEP rewrite, but I'll wait for a decision, to save myself
>> the writing ;)
> 
> Ok, I dislike special prefix chars at all, in a language that
> doesn't have this concept elsewhere (despite strings of course,
> but their prefixes are just regular chars),

appart from * and ** for argument passing.

I can't understand why we can't have a new keyword for decorators.
If I remember correctly the introduction of yield didn't result
in such a public outcry. We'd have to change our programs once
if a variable names collides with the new keyword, but that's better
than having to look at @s for the rest of our Python days.

So how about:

make classmethod
def foo(cls, bar):
    ...

> but the bar "|" appears a lot nicer than "@" to me.
> The bar is small and friendly, a small character for a small
> feature. With "@", I associate a powerful, magical Voodoo
> thing, something that I never expected to see in Python.
> Unless there is a real need, I'd say save "@" for a feature that
> really deserves such a powerful character.

Bye,
    Walter Dörwald



More information about the Python-Dev mailing list