Path: csiph.com!usenet.pasdenom.info!aioe.org!news.stack.nl!newsfeed.xs4all.nl!newsfeed6.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.007 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'example:': 0.03; 'parameter': 0.07; 'rejected': 0.07; '(it': 0.09; 'any)': 0.09; 'assembler': 0.09; 'globals': 0.09; 'indicates': 0.09; 'occasionally': 0.09; 'itself.': 0.11; '(like': 0.15; 'server,': 0.15; '(just': 0.16; 'c++;': 0.16; 'foo"': 0.16; "function's": 0.16; 'invoking': 0.16; 'parameters,': 0.16; 'pointers);': 0.16; 'processors': 0.16; 'programmers;': 0.16; 'storing': 0.16; 'value"': 0.16; 'wrote:': 0.17; 'tries': 0.17; 'appears': 0.18; 'meant': 0.21; 'libraries': 0.22; 'subject:skip:i 10': 0.22; 'programming': 0.23; 'posts': 0.23; 'somebody': 0.23; 'header:In- Reply-To:1': 0.25; 'header:User-Agent:1': 0.26; '(which': 0.26; 'possibly': 0.27; 'c++': 0.27; 'newer': 0.27; 'subject:list': 0.28; "d'aprano": 0.29; 'steven': 0.29; 'books': 0.30; 'function': 0.30; "aren't": 0.33; 'dates': 0.33; 'like:': 0.33; 'to:addr :python-list': 0.33; 'times.': 0.33; 'so,': 0.35; 'pm,': 0.35; 'explain': 0.36; 'but': 0.36; 'two': 0.37; 'being': 0.37; 'subject:: ': 0.38; 'comment': 0.38; 'things': 0.38; 'sure': 0.38; 'to:addr:python.org': 0.39; 'called': 0.39; 'little': 0.39; 'subject:-': 0.40; 'think': 0.40; 'your': 0.60; 'days': 0.60; 'address': 0.60; 'most': 0.61; 'back': 0.62; 'received:phx3.secureserver.net': 0.62; 'received:prod.phx3.secureserver.net': 0.62; 'between': 0.63; 'times': 0.63; 'more': 0.63; 'today,': 0.64; 'ago.': 0.66; 'news': 0.68; 'header:Reply-To:1': 0.68; 'direct': 0.69; 'reply-to:no real name:2**0': 0.72; 'saw': 0.75; '*really*': 0.84; 'distinguish': 0.84; 'indirect': 0.84; "isp's": 0.84; 'received:173.201': 0.91 Date: Wed, 07 Nov 2012 20:51:04 -0800 From: Andrew Robinson User-Agent: Mozilla/5.0 (X11; Linux i686; rv:8.0) Gecko/20111126 Thunderbird/8.0 MIME-Version: 1.0 To: python-list@python.org Subject: Re: Multi-dimensional list initialization References: <50978323$0$6908$e4fe514c@news2.news.xs4all.nl> <5098d2ac$0$29980$c3e8da3$5496439d@news.astraweb.com> <50999214.50100@r3dsolutions.com> <509ABBD4.7020200@r3dsolutions.com> <509af632$0$29980$c3e8da3$5496439d@news.astraweb.com> In-Reply-To: <509af632$0$29980$c3e8da3$5496439d@news.astraweb.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: andrew3@r3dsolutions.com List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 36 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1352350234 news.xs4all.nl 6920 [2001:888:2000:d::a6]:59350 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:32931 On 11/07/2012 04:00 PM, Steven D'Aprano 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? Date has been corrected since two days ago. It will remain until a reboot.... Ignorance, though, might be bliss... > 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. I think the "Call by foo" came into vogue around the time of C++; Eg: It's in books like C++ for C programmers; I never saw it used before then so I *really* don't know for sure... I know "Pass by value" existed all the way back to the 1960's. I see "pass by" in my professional books from those times and even most newer ones; but I only find "Call by value" in popular programming books of more recent times. (Just my experience) So -- I "guess" the reason is that when invoking a subroutine, early hardware often had an assembler mnemonic by the name "call". See for example: Intelx86 hardware books from the 1970's; Most early processors (like the MC6809E, and 8080) allow both direct and indirect *references* to a function (C would call them function pointers); So, occasionally early assembly programs comment things like: "; dynamic VESA libraries are called by value in register D."; And they meant that register D is storing a function call address from two or more vesa cards. It had little to do with the function's parameters, (which might be globals anyway) (It procedural dynamic binding!) Today, I don't know for sure -- so I just don't use it. "pass" indicates a parameter of the present call; but not the present call itself.