Difference between fold and reduce?
In addition to what Lee said, you can define reduce in terms of fold, but not (easily) the other way round: let reduce f list = match list with | head::tail -> List.fold f head tail | [] -> failwith “The list was empty!” The fact that fold takes an explicit initial value for the … Read more