Apparently map.range() doesn't give the right kind of range object for parallel_reduce?? So into which type and how am I supposed to convert the retval of map.range() so I can plug it into parallel_reduce?
P.S.: It'd be neat to have an example which actually uses a container and it's range....
You might also pass the range by const reference instead of by value,
but that shouldn't make any noticeable difference. Maybe if you do make a
mistake in the operation's signature it may ensure a clearer error
message, maybe not. Although... has anyone ever verified whether passing
the range by value allows the compiler to optimise the code without
hoisting range.end() out of the loop, which is always slightly ugly and
inconvenient? And wouldn't it actually be more performant to work from a
copy that can be located in registers than always through a pointer (a
reference is merely a pointer in disguise)? Just wondering...