On Tue, Jul 13, 2010 at 05:18, Andrei Alexandrescu <SeeWebsiteForEmail@erdani.org>  wrote:

    To clarify:

    http://erdani.com/d/phobos/std_range.html


Seems good to me. Lots of flexibility. I may begin to write output ranges :-)

So in the very first case, e may well be a range, but the way it's used internally is up to the output range designer. Maybe it uses a loop, maybe not. OK.

You call r(e) and r([e])) 'delegates'. Are you just using it as a generic term, or does that mean using any callable (struct with opCall) is not a good idea in this case, for whatever reason?


Philippe