Kevin Smith khs4473 at
Wed Nov 14 08:23:07 PST 2012

> If the second argument is optional, it's possible to have both one-arg and
> two-arg styles in the same API.
> What do people think about this idea?

Maybe - minimalism served the class proposal quite well.  It might be a
good strategy here, too.

Here's what I'm thinking:

    // Creates a new promise
    let promise = new Promise();

    // Resolves the promise (ala Q)

    // Rejects the promise (ala Q)

    // A handle to the eventual value of the promise

    // The then method (ala Promises/A+)
    promise.future.then(val => {

        // Success handler

    }, err => {

        // Error handler

    // Returns a future for the value

    // Returns a rejected future with the specified error

    // Returns a future for every eventual value in the list

    // Returns a future for the first resolved future in the list

Initial implementation here:

I think it's important to separate "Promise" from "Future".  Back in the
CommonJS mailing list days, there was contention between Promises/A
(thenables) and Promises/B (basically Q).  But they really are
complementary:  futures and promises.

- Kevin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the es-discuss mailing list