re: Pro tip: using Promise.then for function composition VIEW POST

VIEW FULL DISCUSSION

The cool thing about Promises is that the then method, when used this way, is just like the map function. It has the same abstract type signature. This makes Promises behave like any other functor, which means that this method respects composition. Therefore,

somePromise
  .then(f)
  .then(g)
  .then(h);

is the same thing as

const w = pipe(f, g, h);
somePromise.then(w);

Yes, I was thinking that as well. When chaining a sequence of maps, it's better to only map once using a composition of functions.

I'm curious as to why you think it's better to "map once". I personally prefer using "then" repeatedly, because it might take a while for people who aren't familiar with functional programming to grab the concept of piping.

code of conduct - report abuse