anything like C++ references?
aahz at pythoncraft.com
Mon Jul 14 16:26:36 CEST 2003
In article <sfa4hvkq1j7rg1iga5j3tk2cc4qpr6e5qk at 4ax.com>,
Stephen Horne <intentionally at blank.co.uk> wrote:
>On 13 Jul 2003 21:43:41 -0400, aahz at pythoncraft.com (Aahz) wrote:
>>In article <sag3hv4vf884ed7ouu5cv8ofnopp9j1t12 at 4ax.com>,
>>Stephen Horne <intentionally at blank.co.uk> wrote:
>>>In computer science, a variable is a named binding to a value.
>>>Operations on that variable may rebind it to a different value, but
>>>values don't change behind your back. A pointer is, in effect, a value
>>>which indirectly refers to another (possibly anonymous) variable. A
>>>pointer is something you specifically request, and by doing so you
>>>allow that the 'variable' being indirectly referenced may be modified
>>>by something else that has no direct access to your pointer value (via
>>>your named variable or via copys or pointers-to your pointer held
>>>Python should respect that.
>>That's why I (and others) prefer to use "name" and "target" instead of
>>"variable". Would that assuage your ire?
>Not really, for reasons defined elsewhere. The problem isn't
>theoretical - it is practical, as shown by the fact that people do
>trip over it time and time again. I'm just saying that the problem
>arises out of peoples intuition of how variables should work - an
>intuition that matches very well with theory.
People trip over pointers, too, even when they're explicit. Heck,
people have problem with the simple
a = a + 1
no matter *what* programming language is used if they can't get past
their high school algebra and understand that "=" is a *command* in this
context. The question is not whether newcomers get tripped up, but the
extent to which the language can be easily defined in a consistent and
rigorous manner. Python passes that test quite handily, IMO.
Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/
"Not everything in life has a clue in front of it...." --JMS
More information about the Python-list