Add a version of `map` implemented, behind the scenes, with `reduce`