Joe Strout <[EMAIL PROTECTED]> writes: > As for where I get my definitions from, I draw from several sources: > > 1. Dead-tree textbooks
You've been reading the wrong textbooks. Read Liskov -- she's called CLU (and hence Python's) calling strategy "call-by-sharing" since the 70s. > 2. Wikipedia [2] (and yes, I know that has to be taken with a grain of > salt, but it's so darned convenient) > 3. My wife, who is a computer science professor and does compiler > research > 4. http://javadude.com/articles/passbyvalue.htm (a brief but excellent > article) > 5. Observations of the "ByVal" (default) mode in RB and VB.NET > 6. My own experience implementing the RB compiler (not that > implementation details matter, but it forced me to think very > carefully about references and parameter passing for a very long time) > > Not that I'm trying to argue from authority; I'm trying to argue from > logic. I suspect, though, that your last comment gets to the crux of > the matter, and reinforces my guess above: you don't think c-b-v means > what most people think it means. Indeed, you don't think any of the > languages shown at [1] are, in fact, c-b-v languages. If so, then we > should focus on that and see if we can find a definitive answer. I'll give you the definitive answer from a position of authority, then. I took Barbara Liskov's graduate-level class in programming language theory at MIT, and she called what Python does "call-by-sharing". |>oug -- http://mail.python.org/mailman/listinfo/python-list