On 18.02.2009 23:48, Gary Wright wrote:
> On Feb 18, 2009, at 5:33 PM, Rick DeNatale wrote:
>> Actually, no.
>>
>> The value of any expression is an object.
> 
> I thought you were pretty clear in
> 
> <http://talklikeaduck.denhaven2.com/articles/2006/09/13/on-variables-values-and-objects 
>  >
> 
> that values in Ruby are references, not objects.  That
> posting is one of the nicest expositions on Ruby's object
> model that I've seen.

Well, there are several valid notions of "value" in the domain of 
programming languages and it partly depends on the context which one you 
choose.  You could identify these

1. value, technical

These are the the "things" that you really see, i.e. object references. 
  This is the only thing you'll ever get to see from an object.  These 
are also the values meant when talking about call semantics (call by value).

2. values, practical

 From a practical point of view much more important are objects because 
those are the things that really carry state in Ruby.  Whenever you 
reason about a program and what it should do (or try to find out what it 
does) you do this in terms of the objects living in the program - 
although you never see one. :-)

> It took me quite a while to get a good mental picture of
> Ruby's object model.  Part of the problem was that the
> community doesn't (or didn't) seem to have a consensus
> on terminology in this area. Discussions about values,
> references, expressions, objects, assignment semantics,
> immutable types, symbols, identity,
> and so on often resemble a druken sailor's random walk
> rather than an simple, easily followed narrative.

Nevertheless, the drunken sailor pretty often reaches the harbour. :-)

Kind regards

	robert

-- 
remember.guy do |as, often| as.you_can - without end