Future
and Promise
are proxy object for unknown result
Promise
completes a Future
Future
- read/consumer of unknown result
Promise
- write/producer of unknown result.
//Future has a reference to Promise
Future -> Promise
As a producer
I promise
something and responsible for it
As a consumer
who retrieved a promise
I expect to have a result in future
As for Java CompletableFutures
it is a Promise
because you can set the result and also it implements Future