This library implements purely functional, monadic promises.
Promise is a constructor which takes a fork function. The fork
function takes one argument:
The resolve callback gets called on a value.
Creates a Promise that contains a successful value.
Returns a new promise that evaluates f when the current promise
is successfully fulfilled. f must return a new promise.
Returns a new promise that evaluates f on a value and passes it
through to the resolve function.
Executes a promise to get a value.
Returns a new promise that evaluates f over the promise to get a
value.