On 5/05/2011 11:11 AM, harrismh777 wrote:

The "pass by value" and "pass by reference" parameter passing
mechanisms are pretty well defined, and C uses "pass by value".

Yeah, that's kind-a funny, cause I'm one of the guys (old farts) that helped 
define them....

Cool - please tell us more about your involvement in that. Obviously lots of people were in the industry then, but only a select few would be able to claim they helped define those terms.

There may be some language somewhere that does pass-by-reference which
is not implemented under the hood as pointers, but I can't think of
any... 'cause like I've been saying, way down under the hood, we only
have direct and indirect memory addressing in today's processors. EOS.

What about Python, where passing an integer to a function passes a pointer to an int object, but that function is able to change the value of the variable locally without changing the passed object (indeed, it is impossible to change the passed integer)?

So given the definitions above, Python uses a by-reference mechanism but (in some cases) has by-value semantics.

While I understand exactly how things work (so don't need an explanation), the point is that for anything close to a high-level language, things aren't as black and white as they are for the low-level languages...

Mark
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to