Re: [whatwg/dom] Improving ergonomics of events with Observable (#544)

I think it is fair to characterize the Observable proposal as being stalled
in the TC-39. Stage 2 has been blocked on three separate occasions. Here's
a summarized timeline:

1. November 2015: Members of committee object to stage 2 advancement on the
basis that the AsyncIterator and Observable proposals should advance in
lockstep to ensure they are harmonized.

AsyncIterator proposal subsequently reaches stage 2.

2. May 2016: Champions present evidence that Observable and AsyncIterator
each have different use cases, and can be adapted to each other. Committee
acknowledges that Observable meets criteria for stage 2. However members of
the committee object to stage 2 on the basis that Observable should be
harmonized with CancelToken proposal introduced in the same meeting.

Over the next several months the Observable proposal is significantly
reworked to incorporate CancelTokens as their cancellation primitive.
However the CancelToken proposal is eventually withdrawn due in part to
concerns that consensus cannot be achieved in TC-39.

3. May 2017: Original proposal is submitted for advancement to stage 2.
Some committee members object based on concerns there has not been
insufficient consultation with implementers.

Today the champions of the Observable proposal are optimistic that we can
demonstrate its value to implementers and web developers. However even if
we do that, Observable still has an uphill battle in TC-39 for other
reasons:


   1.

   Observable does not require syntax, and consequently committee members
   have questioned whether there is a compelling reason to standardize.
   2.

   Due to the failure of the TC39 CancelToken proposal, the web has a
   standardized cancellation primitive (AbortController) and JavaScript does
   not. At least one implementer has already expressed concerns about adding
   an additional cancellation primitive to the language and consequently to
   the web platform. This would present yet another hurdle to advancing the
   Observable proposal in TC39.


Standardizing in the WHATWG allows Observable to harmonize with
AbortController, and pursue a more ambitious proposal than we could
reasonably hope to get through TC-39 in a timely fashion. The champions of
this proposal are very excited about finally addressing the many well-known
pain points with DOM event APIs.


It's important to note that the door remains open to standardize a subset
of the Observable proposal in the future should the need arise in the
language for a push stream primitive. Hopefully by that time Observable
will have already demonstrated its value to implementers and developers
alike.



On Dec 13, 2017 3:41 PM, "Jordan Harband" <notifications@github.com> wrote:

> Observable has been at stage 1 in the TC-39 for over a year now
>
> It's worth noting that the only meeting @jhusain
> <https://github.com/jhusain> has even attempted to advance the proposal
> beyond stage 1 at TC39 in the last few years is, according to the agendas, May
> 2017
> <https://github.com/tc39/agendas/blob/902c6d30d3b054a027a1c33b8d5642b3e2632209/2017/05.md>.
> There was a non-advancement update in September 2016
> <https://github.com/tc39/agendas/blob/69cb34bb9346b792bdd92dd5b33beb0c7e404430/2016/09.md>
> regarding cancellation; prior to that, May 2016
> <https://github.com/tc39/agendas/blob/c18e7bf7d8f32d722230d57f6f621ef4e01085d4/2016/05.md>
> and on 3 meeting agendas in 2015.
>
> I don't think it's a fair characterization that "TC39 is going too slow";
> the committee has only been given 6 chances in the entire multi-year
> history of the proposal to discuss it, only one of which asked for stage 2 (it's
> likely that stage advancement was brought up in more than one meeting, of
> course; I'm not checking the notes, only the agendas - but either way, it's
> still not been frequently brought up)
>
> @jhusain <https://github.com/jhusain> are you planning on adding an
> agenda item in January to talk about Observables, and hopefully advance
> them?
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <https://github.com/whatwg/dom/issues/544#issuecomment-351561091>, or mute
> the thread
> <https://github.com/notifications/unsubscribe-auth/AAcfr_y8DAFsvh8uXuX7GjCn1MzvBGYsks5tAGC6gaJpZM4RADEv>
> .
>


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/dom/issues/544#issuecomment-351607779

Received on Thursday, 14 December 2017 04:47:02 UTC