The other big problem is that promises are not pure: they can execute side effects.
Federico Rampazzo

Yep, but notice, if you compose promise-returning functions with `composePromises()` that returns a function that acts like `run()`. Promises are not lazy, but Kleisli composition can make your chaining logic lazy. Nice, right? ☺

Like what you read? Give Eric Elliott a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.