On 10/12/2010 01:25 AM, Pelle wrote:
I think the function signature should be more of isInputRange!R1 &&
isInputRange(ElementType!R1), same with the is(). As the first one
should be a range of ranges.

Correct. I figured out my mistake when I started playing with an implementation.

I think this should be a lazy range of ElementType!(ElementType!R1), or
perhaps the common type. No reason to be overly eager :-)

That's already present, see std.algorithm.joiner(). The problem with joiner() is that it's rather slow - there are a few tests for each element iterated. An eager join() is still necessary.


Andrei

Reply via email to