Are decorators really that different from metaclasses...

Paul Morrow pm_mon at
Fri Sep 3 15:25:45 CEST 2004

Carlos Ribeiro wrote:
> As for the actual idea, I don't like it. Jeff Shannon put it our
> perfectly -- it violates the "law of the least surprise". Just as a
> comparison, imagine the following scenario: a common naming convention
> is to use full uppercase names for constants. Of course, there are no
> real constants in Python, so we know its just a naming convention.
> What if the grammar was changed to turn uppercase names into real
> constants? Many of the arguments used in this discussion apply here as
> well. It's easy to see that it's not a good idea.

Is your grammar change likely to break a significant amount of existing 
code?  If so, then it would probably be a bad idea.  But in and of 
itself it is *not* a bad idea (making uppercase names be constants). 
Prolog, for example, requires that all variable names start with an 
upper case letter.  Weird until you get used to it (then it's a useful 
namespace partitioning device).

> p.s. As for the discussion itself...
> [Paul Morrow]
>>[Anthony Baxter]
>>>I stand by my earlier comments that this is all just hand-waving and
>>>fluff. There's been little concrete effort by Paul to actually spell
>>>out his proposal.
>>I thought that you were done with this thread.  You probably should be
>>as you obviously can't follow what we're talking about here.  Most of
>>the others seem to.  They don't agree with me, that's clear.  But they
>>do appear to understand what I am proposing.
> You have to bear in mind that your proposal is not the first such idea
> to pop up in existence in this mailing list over the years. And most
> of the time, the idea is beaten up to death, exhausting everyone in
> the process, until one of the sides just gets too tired to keep
> fighting. In some cases, the idea may come up as a winner, but is the
> cost really worth it?

What are you talking about here?  Are you suggesting that ideas should 
not be thoroughly discussed, 'beaten up'?  That they should just be 
quickly accepted or dismissed based on a cursory look?

Is the cost really worth it?  How can you answer that question outside 
of any particular context?  It's taken me three years at my company to 
convince them to stop using Java for application development and use 
Python instead.  That was an uphill battle all the way.  Was it worth it?


More information about the Python-list mailing list