"David Alan Black" <dblack / candle.superlink.net> wrote in message
news:0Mm67.4529$1V1.322782 / e420r-atl2.usenetserver.com...
> > (99..0).each{|x|w=" on the wall";u=" #{x>0?(x):'no more'}
> > bottle#{x!=1?'s':''} of beer";p u+w+u+". Take one down, pass it
> > around,"+u+w}
>
> Because you're using a backwards range.  It saves bytes, but it
> doesn't iterate :-)

Actually it doesn't save anything compared to downto, but more
philosofically,
why aren't reverse ranges supported? They make perfect sense, especially
given the equivalent downto method. A few days back I wrote about how we
used ordered sets in market research, and as it happens, we also use
ranges - including reverse ranges.

I don't like the "Take one down ", when there is no more beer. It's such a
dissapointment.

Mikkel