"Promise" as used for this type seems to be the wrong name given the semantics of Scala's Promise and Future types. It is definitely a future in Java terms.

As per email, my recommendation is that we:

1. deprecate F.Promise
2. create a subclass of F.Promise named F.Future
3. also have F.Future implement Java's Future interface