"fold": a replacement for "reduce"

monarch_dodra monarchdodra at gmail.com
Tue Mar 25 11:48:12 PDT 2014


On Tuesday, 25 March 2014 at 18:21:25 UTC, Meta wrote:
> Sounds to me like the fact that it throws an Exception instead 
> of an Error is a leftover from the earlier days of ranges, when 
> it wasn't clear what one should do in the case of an empty 
> range. I think it's well worth making fold nothrow, and it will 
> simplify calling code in the case where the callee wrapped 
> reduce in a try-catch block.

Well, 1 thing I just thought of is that if you are operating on a 
"non-range iterable": Then it may not be possible to actually 
know if the iterable will loop more than once. So in this case, 
we'd have to keep the enforce for iterables...


More information about the Digitalmars-d mailing list