anything like C++ references?

Adam Ruth owski at
Tue Jul 15 01:38:56 CEST 2003

In <sdd6hvsmsq32o62oknpqft6dc61lbup8rn at> Stephen Horne  wrote:
> On 14 Jul 2003 10:30:22 -0400, aahz at (Aahz) wrote:
>>In article <7dc4hvslh7a8fk9p6cvsfqa1c8d44rmmnv at>,
>>Stephen Horne  <intentionally at> wrote:
>>>C++ has precisely one type of variable. That variable is a 
>>>placeholder for a value of a datatype which is specified in the 
>>>declaration. The datatype may be a pointer datatype, but so what? 
>>>Pointer datatypes are not treated any differently than other datatype 
>>>except that they, like all datatypes, they have their own set of 
>>Really?  I would argue that the differing syntaxes is an argument
>>against a single type of variable.  What happens with this:
>>char a;
> To answer this, I simply have to restore the quote you deleted...
>: On 13 Jul 2003 21:03:59 -0700, owski at (Adam Ruth) wrote:
>: >I don't see the arbitrary change.  Python has one type of variable: 
>: >A pointer that cannot itself be dereferenced.  It's much more 
>: >consistent then having 3 types of variables (in C++).
> This is not referring to data types - there are far more than three
> data types in C++. It is referring to whether something is a pointer
> or a reference or not. The mistake in Adams post simply being that
> these are simply datatypes.
> You will note that even in my words, I tried to keep the distinction
> clear by using the word 'datatypes' when I was referring to datatypes.
> In fact, lets look back at my first two scentences in your quote of my
> reply.
>>>C++ has precisely one type of variable. That variable is a 
>>>placeholder for a value of a datatype which is specified in the 
> One *type* of variable, which is associated with its own *datatype*.
> I find it hard to see how you could confuse this, but given my own
> mistakes - well, we're all human I suppose.

So, then, what makes a different variable type?  If not different syntax 
and semantics, what would be the signature?

Let me see if I understand what you're saying.  Even though C++ 
variables can have different syntax and semantics (depending sometimes 
on context), the're all really the same internally and are therefore 
perfectly consistent and usable.  Python variables, on the other hand (
mutable and immutable) have somewhat different semantics (a debatable 
point) but identical implementaions (indeed, indistinguishable), but are 
somehow invalid?  

You say that there is one gold standard definition for what a variable 
is.  Yet even though C++ deals with variables in three semantically 
distinct way, they are somehow all valid within that definition?

Adam Ruth

More information about the Python-list mailing list