Finding the instance reference of an object

greg greg at cosc.canterbury.ac.nz
Fri Oct 31 04:11:27 EDT 2008


Steven D'Aprano wrote:

> Using "call by value" to mean "pass a copy of a reference to the value" 
> is an abuse of terminology, because that's exactly what happens in call 
> by reference: a copy of the reference to the value is passed.

No, it's not a reference to a value, it's a reference to
a *variable* (what C calls an lvalue). There is no such
thing as a reference to an lvalue in Python.

The presence of the word "reference" in "call by
reference" is another nasty terminology collision,
because it has nothing to do with what's called a
"reference" in Python.

The historical choice of terms is somewhat unfortunate.
If they'd been called something like "call by assignment"
and "call by alias", none of this confusion would have
arisen.

-- 
Greg



More information about the Python-list mailing list