Standardizing __proto__

Mike Shaver mike.shaver at gmail.com
Fri Mar 18 09:46:38 PDT 2011


On Fri, Mar 18, 2011 at 9:29 AM, John-David Dalton
<john.david.dalton at gmail.com> wrote:
> @Mike Shaver
> For other possible uses please check out:
> http://msdn.microsoft.com/en-us/scriptjunkie/gg278167
> https://github.com/jdalton/fusebox#readme

Those all look like they are needing custom-initialization, not
arbitrary mutation at any point.  Would you agree?  For symmetry with
Object.create, you might want Boolean.create, Date.create and so
forth, but that's still initialization-time, and TBH I would be
surprised if there were actually many collisions between libraries
that augment those prototypes.

Preserving (or adding to other engines) arbitrary prototype chain
mutation in order to work around name collisions seems wrong to me.
Mutable proto just happened to be the hack that worked (though so did
iframes), and I can't really find anything other than Fuse that uses
it on the web today.  The solution to name collisions is simple
modules, IMO, not monkeypatching of the builtin prototype hierarchy.

I think you can also achieve what you want with Harmony proxies, so
you'll have that option in the next edition of ES.

Mike


More information about the es-discuss mailing list