es-discuss Digest, Vol 105, Issue 2

Yuri Guller gullerya at gmail.com
Mon Nov 2 21:29:10 UTC 2015


Being a one of those humble ~0.017% of consumers of O.o, I'd like, too, to
raise a vote against the removal of the feature.
Having implemented my own 2 way binding library utilizing O.o from one and
MutationObserver from another side, I must say that it is very very
convenient facility, regardless of callback oriented flow, microtask's 'to
be done shorty' flavor etc.
Low usage may easily be explained by narrow support matrix in browsers and
I'm sure that this number would easily multiply itself once at least one
more of majors adds support for that + some popular library utilize it as
an engine.

Actually, some time beforehand I've even posted here a call for enhancing
the O.o to support 'deep' observe functionality (which currently must be
implemented applicatively on each object in the observed tree), much like
the MutationObserver does, and I still believe it would be a right thing to
do.

Please, consider the withdrawal once again, the fact the here and there
people write observe-like logic with getters/setters, memory state
digesting and stuff like that speaks for the real need and lacuna to be
filled up.

Regards,
Guller Yuri.

2015-11-02 21:31 GMT+02:00 <es-discuss-request at mozilla.org>:

> Send es-discuss mailing list submissions to
>         es-discuss at mozilla.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
>         https://mail.mozilla.org/listinfo/es-discuss
> or, via email, send a message with subject or body 'help' to
>         es-discuss-request at mozilla.org
>
> You can reach the person managing the list at
>         es-discuss-owner at mozilla.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of es-discuss digest..."
>
> Today's Topics:
>
>    1. An update on Object.observe (Adam Klein)
>    2. Re: An update on Object.observe (Matthew Phillips)
>    3. Re: An update on Object.observe (Adam Klein)
>    4. Re: An update on Object.observe (Benoit Marchant)
>
>
> ---------- הודעה שהועברה ----------
> From: Adam Klein <adamk at chromium.org>
> To: es-discuss <es-discuss at mozilla.org>
> Cc:
> Date: Mon, 2 Nov 2015 10:27:43 -0800
> Subject: An update on Object.observe
> Over three years ago, Rafael Weinstein, Erik Arvidsson, and I set out to
> design and implement what we believed to be the primitive underlying the
> data-binding system of MDV ("model-driven views"). We prototyped an
> implementation in a branch of V8, then got agreement from the V8 team to
> build a real version upstream, while pushing Object.observe ("O.o") as a
> part of the upcoming ES7 standard and working with the Polymer team to
> build their data-binding system on top of O.o.
>
> Three years later, the world has changed in a variety of ways. While other
> data-binding frameworks (such as Ember and Angular) showed interest, it was
> difficult to see how they could evolve their existing model to match that
> of O.o. Polymer rewrote from the ground up for its 1.0 release, and in that
> rebuilding did not utilize O.o. And React's processing model, which tries
> to avoid the mutable state inherent in data-binding systems, has become
> quite popular on the web.
>
> After much discussion with the parties involved, I plan to withdraw the
> Object.observe proposal from TC39 (where it currently sits at stage 2 in
> the ES spec process), and hope to remove support from V8 by the end of the
> year (the feature is used on 0.0169% of Chrome pageviews, according to
> chromestatus.com).
>
> For developers who have been experimenting with O.o and are seeking a
> transition path, consider using a polyfill such as
> https://github.com/MaxArt2501/object-observe or a wrapper library like
> https://github.com/polymer/observe-js.
>
> - Adam
>
>
> ---------- הודעה שהועברה ----------
> From: Matthew Phillips <matthew at bitovi.com>
> To: es-discuss <es-discuss at mozilla.org>
> Cc:
> Date: Mon, 2 Nov 2015 14:21:36 -0500
> Subject: Re: An update on Object.observe
>
> Over three years ago, Rafael Weinstein, Erik Arvidsson, and I set out to
>> design and implement what we believed to be the primitive underlying the
>> data-binding system of MDV ("model-driven views"). We prototyped an
>> implementation in a branch of V8, then got agreement from the V8 team to
>> build a real version upstream, while pushing Object.observe ("O.o") as a
>> part of the upcoming ES7 standard and working with the Polymer team to
>> build their data-binding system on top of O.o.
>>
>> Three years later, the world has changed in a variety of ways. While
>> other data-binding frameworks (such as Ember and Angular) showed interest,
>> it was difficult to see how they could evolve their existing model to match
>> that of O.o. Polymer rewrote from the ground up for its 1.0 release, and in
>> that rebuilding did not utilize O.o. And React's processing model, which
>> tries to avoid the mutable state inherent in data-binding systems, has
>> become quite popular on the web.
>>
>> After much discussion with the parties involved, I plan to withdraw the
>> Object.observe proposal from TC39 (where it currently sits at stage 2 in
>> the ES spec process), and hope to remove support from V8 by the end of the
>> year (the feature is used on 0.0169% of Chrome pageviews, according to
>> chromestatus.com).
>>
>> For developers who have been experimenting with O.o and are seeking a
>> transition path, consider using a polyfill such as
>> https://github.com/MaxArt2501/object-observe or a wrapper library like
>> https://github.com/polymer/observe-js.
>>
>> - Adam
>>
>
> What is Polymer using in place of Object.observe?
>
>
> ---------- הודעה שהועברה ----------
> From: Adam Klein <adamk at chromium.org>
> To: Matthew Phillips <matthew at bitovi.com>
> Cc: es-discuss <es-discuss at mozilla.org>
> Date: Mon, 2 Nov 2015 11:30:20 -0800
> Subject: Re: An update on Object.observe
> On Mon, Nov 2, 2015 at 11:21 AM, Matthew Phillips <matthew at bitovi.com>
> wrote:
>
>>
>> Over three years ago, Rafael Weinstein, Erik Arvidsson, and I set out to
>>> design and implement what we believed to be the primitive underlying the
>>> data-binding system of MDV ("model-driven views"). We prototyped an
>>> implementation in a branch of V8, then got agreement from the V8 team to
>>> build a real version upstream, while pushing Object.observe ("O.o") as a
>>> part of the upcoming ES7 standard and working with the Polymer team to
>>> build their data-binding system on top of O.o.
>>>
>>> Three years later, the world has changed in a variety of ways. While
>>> other data-binding frameworks (such as Ember and Angular) showed interest,
>>> it was difficult to see how they could evolve their existing model to match
>>> that of O.o. Polymer rewrote from the ground up for its 1.0 release, and in
>>> that rebuilding did not utilize O.o. And React's processing model, which
>>> tries to avoid the mutable state inherent in data-binding systems, has
>>> become quite popular on the web.
>>>
>>> After much discussion with the parties involved, I plan to withdraw the
>>> Object.observe proposal from TC39 (where it currently sits at stage 2 in
>>> the ES spec process), and hope to remove support from V8 by the end of the
>>> year (the feature is used on 0.0169% of Chrome pageviews, according to
>>> chromestatus.com).
>>>
>>> For developers who have been experimenting with O.o and are seeking a
>>> transition path, consider using a polyfill such as
>>> https://github.com/MaxArt2501/object-observe or a wrapper library like
>>> https://github.com/polymer/observe-js.
>>>
>>> - Adam
>>>
>>
>> What is Polymer using in place of Object.observe?
>>
>
> Polymer uses a mix of getters/setters and DOM events to handle data
> propagation. Details can be found on polymer-project.org, e.g.:
>
>
> https://www.polymer-project.org/1.0/docs/devguide/properties.html#change-callbacks
>
> https://www.polymer-project.org/1.0/docs/devguide/data-binding.html#change-notification-protocol
>
>
> ---------- הודעה שהועברה ----------
> From: Benoit Marchant <marchant at mac.com>
> To: Adam Klein <adamk at chromium.org>
> Cc: es-discuss <es-discuss at mozilla.org>
> Date: Mon, 02 Nov 2015 11:31:16 -0800
> Subject: Re: An update on Object.observe
> Hi Adam,
>
> Just sharing my $0.02 : I implemented a two-way binding system in my first
> JavaScript framework at Apple in 2007, designed as a layer on top of a
> property change observing API, like in Cocoa, and that’s still our design
> in Montage today. I’ve never felt the need nor understood why observing
> changes on a whole object were useful for bindings, and without measuring,
> I was concerned (maybe wrongly) by the performance overhead of doing so.
>
> Thanks for the update.
>
> Benoit
>
> On Nov 2, 2015, at 10:27 AM, Adam Klein <adamk at chromium.org> wrote:
>
> Over three years ago, Rafael Weinstein, Erik Arvidsson, and I set out to
> design and implement what we believed to be the primitive underlying the
> data-binding system of MDV ("model-driven views"). We prototyped an
> implementation in a branch of V8, then got agreement from the V8 team to
> build a real version upstream, while pushing Object.observe ("O.o") as a
> part of the upcoming ES7 standard and working with the Polymer team to
> build their data-binding system on top of O.o.
>
> Three years later, the world has changed in a variety of ways. While other
> data-binding frameworks (such as Ember and Angular) showed interest, it was
> difficult to see how they could evolve their existing model to match that
> of O.o. Polymer rewrote from the ground up for its 1.0 release, and in that
> rebuilding did not utilize O.o. And React's processing model, which tries
> to avoid the mutable state inherent in data-binding systems, has become
> quite popular on the web.
>
> After much discussion with the parties involved, I plan to withdraw the
> Object.observe proposal from TC39 (where it currently sits at stage 2 in
> the ES spec process), and hope to remove support from V8 by the end of the
> year (the feature is used on 0.0169% of Chrome pageviews, according to
> chromestatus.com).
>
> For developers who have been experimenting with O.o and are seeking a
> transition path, consider using a polyfill such as
> https://github.com/MaxArt2501/object-observe or a wrapper library like
> https://github.com/polymer/observe-js.
>
> - Adam
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
>
>
>
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20151102/8d55d27e/attachment-0001.html>


More information about the es-discuss mailing list