From: Robert Klemme Date: 2004-09-20T21:59:39+09:00 Subject: Re: methods with and without ! "Jani Monoses" schrieb im Newsbeitrag news:414EC550.2040700@iv.ro... > Hello > > what is the criterion for methods to have a ! terminated variant in the > standard ruby APIs? > For instance in String strip has a receiver-modifying counterpart but > ljust does not. > Is it that the result fits in the same memory? (strip returns a string > at most as long as the original while just can return a much longer one) Normally the rule is that the method modifies the current instance as opposed to the creation of a new instance (e.g. String#gsub! and String#gsub). But that convention is not followed consistently in the std lib. I guess the explanatory text contains "historic reasons" somewhere. :-} Kind regards robert