--0015174c37b4f9d8c6046d5aa161
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

 > Though again, do you have a real example of
> when you nil out a set value? I can't picture why I'd do that

Just imagine you're building some sort of a binary tree structure.
You'd have inner nodes and leafs and you'd probably want
to represent the leafs with nil. Now when you remove a node
at some point, you'll have to set the #left_child accessor (or
whatever you like to call it) to nil...

Or take an options hash which has to provide a "default" state
so the system can decide whether or not an option was explicitly
set. You'd probably want to use nil for that (at least I would ;-)

I have to say: nil is one of the nicest features of dynamically typed
languages - just imagine using java without it...
I use it all the time.

etc. etc.

> def name(*args)
>       return @name if args.empty?
>      @name  rgs.first
> end

Better, but IMHO that's WAY too much overhead for something as basic as a
setter.
After all, you have to construct an array everytime you access the setter...

Greetz,
k

--0015174c37b4f9d8c6046d5aa161--