I think consuming all of a range evaluating front and doing nothing should be the role of reduce with only one parameter (the range). That overload would take the range to be "exhausted" and return void. Thus your example becomes:

Maybe, then, it would be best to have a template that calls reduce in such a way, that makes it perfectly clear what is happening.

Reply via email to