From: matz@... (Yukihiro Matsumoto) Date: 1999-07-01T17:01:24+09:00 Subject: [ruby-talk:00413] Re: New feature for Ruby? Hi Clemens, In message "[ruby-talk:00407] New feature for Ruby?" on 99/07/01, Clemens.Hintze@bln.sel.alcatel.de writes: |So here are my ideas: In summary, your proposal should be: (a) make Range be able to iterate reverse order if beg > end. (b) make step can be supplied to Range::new. (c) add Range#[n] to retrieve n-th item of the iteration. (d) make String's magic decrement possible (as magic increment). Right? My ideas for the proposal are: (a) Range is range, not interval; I think you'd better define Interval class to do the work. (b) Ditto. There may be the possibility of Range#step. (c) I'm not sure; I'd like to hear others' opinion. (d) It's good. The only reason for absence of String's magic increment is my laziness. I'm happy to add magic decrement feature to the String class, if somebody supplies me the code (acutually you already did). And your proposal |Every class which wants to be used as Range, should implement a |"succ", "pred" and a "compare method" to enable us to detect the end |of iteration. is already there, except "pred" and reverse ordering. Concerning Interval, I'm affraid it should be restricted to the numric intervals. For example, by String's magic increment, "a000" never reaches "bcde", even though latter is larger lexicographically. It may raise the problem sometimes. But with numerical values, Intervals are much easier to operate. matz.