It's used to replace all looping. A combination of map and reduce is an alternative to loops.
Also you don't need map. You can use list comprehension to replace map. But list comprehensions can't replace reduce.
Technically reduce can also replace map. The only primitive you need to do all your iterations is technically just reduce.
If you want to get more elegant than you don't even need reduce. You can eliminate all redundant primitives and use functions themselves for iteration. It's Just recursion.