Multi-dimensional list initialization

Oscar Benjamin oscar.j.benjamin at
Thu Nov 8 01:30:53 CET 2012

On 8 November 2012 00:00, Steven D'Aprano
<steve+comp.lang.python at> wrote:
> Andrew, it appears that your posts are being eaten or rejected by my
> ISP's news server, because they aren't showing up for me. Possibly a side-
> effect of your dates being in the distant past? So if you have replied to
> any of my posts, I haven't seen them.
> In any case, I wanted to ask a question:
> On Wed, 07 Nov 2012 14:01:19 -0700, Ian Kelly wrote:
>> On Wed, Nov 7, 2012 at 12:51 PM, Andrew Robinson
>> <andrew3 at> wrote:
> [...]
>>> But, in any event:
>>> Pass by value (not call by value) is a term stretching back 30 years;
>>> eg: when I learned the meaning of the words.  Rewording it as "Call by
>>> value" is something that happened later, and the nuance is lost on
>>> those without a very wide programming knowledge *and* age.
> Every now and again I come across somebody who tries to distinguish
> between "call by foo" and "pass by foo", but nobody has been able to
> explain the difference (if any) to me. When you CALL a function, you PASS
> values to it. Hence the two terms are effectively synonyms, and both
> refer to the evaluation strategy when binding arguments to parameters.
> If you believe that is incorrect, can you point me to something
> explaining the difference?

Did you also miss MRAB's post above? It made sense to me.

MRAB wrote:
> The disadvantage of calling it "call by ..." is that it suggests that
> you're just talking about calling functions.
> What about binding in general, eg "x = y"? Does it make sense to still
> call it "call by ..."?

More information about the Python-list mailing list