Kevin Smith (2013-12-20T17:38:00.000Z)
domenic at domenicdenicola.com (2014-01-03T17:01:57.008Z)
I don't know enough about jQuery's internals to write convincing code, but the basic idea is that you feature detect for ES6 Promises. If that test passes, then you implement jQuery.Deferred using a Promise subclass (which would do assimilation for backward compatibility reasons). Otherwise you implement it the old-fashioned way. Application developers who are going to hook into the new DOM API's need to upgrade their jQuery. Of course, jQuery promises will still over-assimilate objects which have a `then` method but aren't "thenable", but that's jQuery's backward compatibility problem, not the entire language's. Am I missing something? I usually do... : )