
On 6/26/2011 2:52 PM, Senthil Kumaran wrote:
http://bugs.python.org/issue10403 is a documentation bug which talks about using the term 'attribute' instead of the term 'member' when it denotes the class attributes. Agreed.
But the discussion goes on to mention that,
"Members and methods" should just be "attributes".
The terms 'member' ('data attribute' in modern terms) and 'method' go back to original Python when builtin types (or instances thereof) had members, methods, neither, or possibly both (but I do not remember anything with both). I believe there were separate builtin functions for retrieving them. "Member' is obsolete; 'method' definitely is not.
I find this bit odd. If the two terms are used together, then replacing it with attributes is fine.
Agreed.
But the term 'methods' cannot be replaced with 'attributes' as it changes the meaning.
Also agreed.
Take this case,
:class:`BZ2File` provides all of the methods specified by the :class:`io.BufferedIOBase`, except for :meth:`detach` and :meth:`truncate`. Iteration and the :keyword:`with` statement are supported.
is correct, whereas replacing "methods with attributes" would make it as
:class:`BZ2File` provides all of the attributes specified by the :class:`io.BufferedIOBase`, except for :meth:`detach` and :meth:`truncate`. Iteration and the :keyword:`with` statement are supported.
It does not seem correct.
It may not even be correct. I would leave it as is unless there are inherited data attributes so that the correction makes more sense than the original. A blind change of 'method' to 'attribute' is wrong.
My stance is, "It is attributes instead of term members and the term method when it denotes methods can be left as such." Can I still hold on to that and modify the patch which Adam has submitted
Yes.
or the 'attribute' substitution everywhere makes sense?
No. My strong history-based opinions ;-). -- Terry Jan Reedy