On Wed, 16 May 2018 17:03:22 +1000, Ben Finney wrote:

> So, no, I think the more useful – and less problematic – framing is that
> every object *has* a value, and mutable objects may change to a
> different value while remaining the same object.

What's an object?

That's not a rhetorical question. When I started learning Python, I had 
*no idea* what "object oriented programming" was, or what classes and 
objects and instances were. I still don't know if there is a precise, 
accurate, unambiguous definition.

If you're going to describe Python in terms of objects for pedagogical 
purposes, you better be prepared to explain in simple, plain English, non-
technical, unambiguous terms what an object is. Without reference to the 
CPython (or any other Python) implementation.

It is true that "value" has a multitude of meanings. But "object" is even 
worse. Not only does it also have a multitude of meanings (Websters lists 
at least 7 for the noun, WordNet gives 5), but it ALSO has a technical 
meaning in computer science, AND a specific meaning in Python as the name 
of the type "object", AND also is used as a synonym for "instance".

I expect that most people understand that the ordinary English word 
"value" has a multitude of meanings, and so will avoid thinking of it as 
a precise technical term. I don't think you can say the same for "object".



Reply via email to