When calling String#split with no arguments, it defaults to using $;,
which, by default, is set to nil.  However, when calling String#split
with nil (including $; when it is set to nil) it raises exception.
This surprised me, which opposes the Principle of Least Surprise.

Oughtn't String#split use $; when called with a nil first argument?