From: dvandeun@... (Dirk van Deun) Date: 2006-02-21T21:23:31+09:00 Subject: Re: dirty ranges For the people who remarked (quite sensibly, of course) that you just shouldn't do that, tinker with the endpoints of a range: it works the other way too, of course: irb(main):001:0> rng="a".."z" => "a".."z" irb(main):002:0> arr=rng.to_a => ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"] irb(main):003:0> arr[0][0]="z" => "z" irb(main):004:0> rng => "z".."z" Something like this may be more likely to be a real problem. The begin/end versus min/max I obviously didn't know, but then again, if max is an ad-hoc constructed object, shouldn't min be too, if only for symmetry ? Hacker-Dirk likes Ruby, but Computer-Scientist-Dirk tends to be wary of systems with irregularities like these... Dirk van Deun -- Ceterum censeo Redmond delendum