On Sep 4, 2007, at 4:46 PM, Brian Candler wrote: > > Before: > > def <=>(entry) > returning((entry.quality <=> quality).to_s) do |c| > c.replace((index <=> entry.index).to_s) if c == '0' > end.to_i > end > > After: > > def <=>(entry) > c = (entry.quality <=> quality).to_s > c.replace((index <=> entry.index).to_s) if c == '0' > c.to_i > end
Ah... That'd be me. I'm still fond of the k-combinator, but not so fond of it that I can't see a misuse these days :) The .to_s and then subsequent .to_i were merely facilitators to being able to use returning. That snippet would probably be best rewritten as: def <=>(entry) c = entry.quality <=> quality c = index <=> entry.index if c == 0 c end specs still pass with that change made. -- Stephen Caudill (voxdolo) _______________________________________________ Merb-devel mailing list Merb-devel@rubyforge.org http://rubyforge.org/mailman/listinfo/merb-devel