Do you mean 'hidden prototype object'? It is like a normal object
except that not accessible by JS code '__proto__'.

I am not sure if object cloning can help much because you need to fix
whole prototype chain for a cloned object. V8 is doing something like
that for object literals (Boilerplate).

On Thu, Nov 6, 2008 at 10:11 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> I've got a few questions regarding the representation of hidden
> classes:
>
> 1. Which v8 data structure is the hidden class that the v8 literature
> talks about?
> 2. Are hidden classes supposed to be immutable?  Or are they mutable
> like any JS Objects?
> 3. If immutable, is it possible to share the hidden classes across
> execution contexts?
> 4. If mutable and not shareable across execution contexts, are there
> any data structures that make up the object that is static meta-data
> that can be shared?
>
> The reason for my asking is because I'm wondering if it is possible to
> use object cloning to speed up the process of populating a new context
> with objects.  I'm looking for a mechanism (either an existing one or
> to write one myself) that is similar to snapshots.
>
> The difference is that the snapshot mechanism seems to serialize the
> entire heap into a data stream that is later reloaded in entirety into
> a new launch of v8.  What I want to do instead is to only clone one
> set of objects (as defined by a reference execution context) into a
> new context.  Serializing/deserializing this set of objects can be
> done as an advanced exercise later.
>
> I'm also hoping that the objects in the new context can reuse all the
> hidden classes from the reference context.  This is why I'm asking if
> the hidden classes (which I presume are just collections of metadata)
> are immutable.
>
> Please advise.  Thanks.
> >
>

--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to