Is there any reason that in-place functions like gsub! and strip! return either
the modified string or nil? The nil part is problematic. A function
should do no harm and leave the string as it found it if nothing is
found, I think. Their non-inline versions don't return nil if nothing was
found. This behaviour makes these functions untrustable for me.
Has this complaint ever been voiced before?