From: "Jan E." Date: 2012-03-19T02:21:21+09:00 Subject: Re: why no decreasing enumerations? Hi, I think you misunderstand the purpose of ranges. They aren't meant to be ordered lists but rather some kind of abstract interval (like in mathematics). You can check if a specific object is in the range, but you may not even be able to enumerate all the elements of the range. For example, try (1.0 .. 5.0).each {|el| puts el} This raises a TypeError: "can't iterate from Float" Of course, you *can* iterate over some ranges (if the endpoints have a succ method). But then the elements will simply be put out in the most obvious way: from low to high. The range itself doesn't imply a certain order. If you actually want to count up/down from some integer to another, you should use an appropriate data structure like an enumerator: a, b = rand(20), rand(20) list = if a <= b a.upto b else a.downto b end -- Posted via http://www.ruby-forum.com/.