Java's CompletableFuture is a Monad given its methods thenCompose and thenApply, which
correspond to >>= (bind) and fmap in Haskell.
It is a well known fact that any Monad gives rise to an Applicative. Now, does CompletableFuture have a method that corresponds to <*> (ap) in Haskell or can such a function be implemented in terms of the existing methods?