Why are Promises Monads?
UDATE. See this new library providing functor and monad operators for plain callback-based functions that do not have the issues with theneables: https://github.com/dmitriz/cpsfy The JS Promise is neither a Functor nor an Applicative nor a Monad It is not a functor, because the composition preservation law (sending compositions of functions to compositions of their images) … Read more