From: Rick DeNatale Date: 2010-10-03T22:06:16+09:00 Subject: Re: Pass by reference and copy on write On Sun, Oct 3, 2010 at 5:32 AM, Josh Cheek wrote: > On Sat, Oct 2, 2010 at 8:13 PM, Xavier Noria wrote: > >> I've written a post about this topic: >> >> http://advogato.org/person/fxn/diary/534.html >> > I'm not sure about a few things in your post. .... > So, I say that Ruby does pass by reference the Java way, and Perl does pass > by reference the C++ way. And C can do both, and can also do pass by value. > I've always referred to the way languages like Smalltalk, Ruby, and Java(when passing an object) pass arguments is "by object reference." http://www.ruby-forum.com/topic/126256#564797 I don't recall where I first heard that term, but it might have been in the literature around the Emerald, a distributed OO language designed at the University of Washington in the mid-late 1980s. See also http://en.wikipedia.org/wiki/Python_syntax_and_semantics#Data_structures and http://www.testingreflections.com/node/view/5126 for use of that term in the description of Python http://effbot.org/zone/call-by-object.htm for a similar comment by someone about CLU although the actual name coined by Barbara Liskov for what appears to be the same thing in CLU is "call by sharing" or "call by object" or "call by object sharing" Of all of these 'synonyms' perhaps call "by object" might be the best. -- Rick DeNatale Blog: http://talklikeaduck.denhaven2.com/ Github: http://github.com/rubyredrick Twitter: @RickDeNatale WWR: http://www.workingwithrails.com/person/9021-rick-denatale LinkedIn: http://www.linkedin.com/in/rickdenatale