Nil.to_s

Hi,

I think it was discussed before but I do not remember a conclusion.

Currently

nil.to_s => ""
nil.to_i => 0

so on.

While in some scenario, this behavior comes handy, in many occasions, it
would result
in mysterious, unnoticed problem. for example

“#{[].shift}” => “”

I’d argue that nil is an object representing a non-existence or
invalidity(false state).
So any message sent to it trying to get back concrete object (such as
to_s/to_i) should result in an exception.

Any comments?

Thanks

-Ted