[Python-Dev] Issue10403 - using 'attributes' instead of members in documentation

R. David Murray rdmurray at bitdance.com
Mon Jun 27 22:37:21 CEST 2011

On Mon, 27 Jun 2011 20:30:12 +0100, Michael Foord <fuzzyman at voidspace.org.uk> wrote:
> On 27/06/2011 20:22, R. David Murray wrote:
> > [snip...]
> > So, the correct generic term for something that can be accessed
> > via attribute notation is attribute.  The more specific term for an
> > attribute that is a method is method.  We don't currently have a more
> > specific collective term for attributes that aren't methods.  *That*
> > is the problem.
> I think part of the problem is also that *some* people's usage of the 
> term doesn't match the precise terminology.
> It sounds like if I say "an object's attributes" some of us will expect 
> that to include the methods and some of us not. I'd say anecdotally that 
> when people talk about object attributes collectively they are *not* 
> including methods. When they talk about attribute lookup that rightly 
> includes everything.

Yes, I think that it is common to use 'attributes' to mean 'non-method
attributes', and often the context can make clear which usage is
intended.  What we should do in our own docs is a different question,
but we do have other cases where "it is clear from context" is
considered a valid argument for technically imprecise terminology.
And I think that's reasonable.

> A precise term to describe "attributes that are not methods" would still 
> be helpful. I guess the closest we have is "non-descriptors", but that 
> requires a knowledge of the descriptor protocol for it to be useful.

I'm not really as comfortable as I think I should be with the descriptor
stuff, but aren't properties descriptors in the sense you are using it
here?  Yet I don't think a property should be called a method, even though
it is implemented via a function(s) that looks a lot like a method.  This is
why talking about non-method attributes collectively is so fraught....

R. David Murray           http://www.bitdance.com

More information about the Python-Dev mailing list