[[Class]] Property of Host Object
Mark S. Miller
erights at google.com
Mon Jul 19 14:02:27 PDT 2010
On Mon, Jul 19, 2010 at 1:49 PM, Allen Wirfs-Brock <
Allen.Wirfs-Brock at microsoft.com> wrote:
> > -----Original Message-----
> > From: Mark S. Miller [mailto:erights at google.com]
> > Is the following one of those cases:
> > > The value of the [[Class]] internal property of a host object
> > > may be any String value except one of "Arguments", "Array",
> > > "Boolean", "Date", "Error", "Function", "JSON", "Math", "Number",
> > > "Object", "RegExp", and "String"
> Yes. As you said in an earlier message, the intent was that the host should
> environment should not violate specification of the nominal "types" used by
> the specification. But certainly, a host environment could produce such
> values and even management them differently as long as it doesn't violate
> any the semantics for that "type" that appear in the ES5 spec.
> > If so, then I think we may simply have a term rotation. Everytime I say
> > object", and AFAICT every time the spec says "host object" other than the
> > definition (4.3.8), both I and it mean what you refer to above as a
> > host object". Also, by your clarification above, a "native host object"
> > indistinguishable from any other "native object", so I'm not sure what
> > the distinction has.
> Yes, I agree. I think the main "bug" in this regard in the spec. in that
> the definition in 4.3.8 does not clarify this distinction. But note that
> 4.3.6 is quite clear that a native object is /any/ object whose semantics
> are fully defined by the ES5 specification and the note to 4.3.8 says that
> any object that is not native (ie whose semantics are not fully defined by
> the ES5 specification) is a host object. The only host objects that the
> spec. needs to explicitly talk about are host objects that are not native
> > In any case, we clearly have a disagreement about our memory of what we
> > these terms to mean. Anyone else who was there, care to weigh in?
> Do we?? What do you think "host object" means?
Objects that are not native objects. I.e., the categories are disjoint and
Garrett's isHostObject method is correct.
> es5-discuss mailing list
> es5-discuss at mozilla.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the es-discuss