I've thought some more about how to support slicing in the case of take(someInfiniteRange, someNumber) and I think it would be a good idea to require infinite random-access ranges to support an advance() function. This would basically be like slicing, but only change the beginning of the range, not the end (since there is no end of an infinite range). Calling infiniteRange.advance(N) would be equivalent to calling infiniteRange.popFront() N times, except that advance() would have O(1) time complexity. Sound good? Any alternative suggestions?
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos

Reply via email to