Finding the instance reference of an object

Douglas Alan doug at alum.mit.edu
Tue Oct 28 00:14:23 EDT 2008


greg <greg at cosc.canterbury.ac.nz> writes:

> Seems to me that (1) describes exactly how parameter passing
> works in Python. So why insist that it's *not* call by value?

Because there's an important distinction to be made, and the
distinction has been written up in the Computer Science literature
since Lisp first starting using the same argument passing semantics as
Python back in 1958.  The semantics are called "call by sharing".

Many mainstream programming languages other than Python now use call
by sharing.  They include Java, JavaScript, Ruby, ActionScript, and C#.

|>oug

P.S. Lisp didn't call it "call by sharing" -- Lisp called it
"binding".  The designers of CLU invented the term "call by sharing"
back in the 70s.  (Or at least I believe they invented the term.  They
certainly did use the term.)



More information about the Python-list mailing list