You could hack Reduce (or many other functions) to do everything you do with Map or ForEach but that would violate the principle of least surprise.
The problem is that many people today learned of these concepts as "alternatives" that Javascript provides rather than basic building blocks as you would in la language like Lisp or Smalltalk (they're named differently in Smalltalk but are essentially the same concept).
Ooh definitely. I have seen so many blogs with titles like "become a better developer by using map!". People are sensitive to that, and many of us follow written advice blindly.
You are correct. Map is for mapping.
You could hack Reduce (or many other functions) to do everything you do with Map or ForEach but that would violate the principle of least surprise.
The problem is that many people today learned of these concepts as "alternatives" that Javascript provides rather than basic building blocks as you would in la language like Lisp or Smalltalk (they're named differently in Smalltalk but are essentially the same concept).
Ooh definitely. I have seen so many blogs with titles like "become a better developer by using map!". People are sensitive to that, and many of us follow written advice blindly.
So much of software development is just fad driven without really understanding or evaluating the benefits.
I think at this point it's just getting wasteful and will need to stop eventually.