Official definition of call-by-value (Re: Finding the instance reference...)
greg
greg at cosc.canterbury.ac.nz
Tue Nov 11 19:10:10 EST 2008
Here is the definition of call-by-value from the
"Revised Report on the Algorithmic Language Algol 60"
<http://www.masswerk.at/algol60/report.htm>:
4.7.3.1. Value assignment (call by value). All formal parameters quoted in the
value part of the procedure declaration heading are assigned the values (cf.
section 2.8. Values and types) of the corresponding actual parameters, these
assignments being considers as being performed explicitly before entering the
procedure body. The effect is as though an additional block embracing the
procedure body were created in which these assignments were made to variables
local to this fictitious block with types as given in the corresponding
specifications (cf. section 5.4.5).
There you have it -- call by value is offially defined in
terms of assignment. There is no mention in there of copying.
So it's perfectly correct to use it in relation to Python.
--
Greg
More information about the Python-list
mailing list