Purpose of reduce(Array, Array)

Thank you, I think that makes sense. However, I don’t see why this is permitted in the first place. I don’t see why anyone would want to do this. Wouldn’t it be better to give reduce a type that disallowed this usage?