Hi -- Gavin Sinclair <gsinclair / soyabean.com.au> writes: > A quick one. I see some sense in Object#send accepting 'nil' as the > message. You send no message, you get the plain object. Does anyone > agree? > > #send is clearly useful when you want to vary the message sent to an > object based on some condition. Sometimes the default condition is to > send no message, but that can't be coded as elegantly. > > For example: > > date_colour_msg = > case Date.today - date > when 0 then :red > when 1 then :yellow > when 2..5 then :green > else > nil # Default: whatever the normal colour is. > end > > date_str = date.to_s.send(date_colour_msg) I don't like the special-case nature of this. I believe send should send, not intercept (which is what this comes down to), its message. David -- David A. Black dblack / wobblini.net