Travis Leithead: > Since this spec is presumably creating a language binding for > JavaScript,
Yes, since ECMAScript ≈ JavaScript (for some value of JavaScript). > (and assuming interface objects are Functions, as seen by > Opera), As mentioned in my previous e-mail, I think that assumption is false. An object does not need to be a Function to be able to be used on the right-hand side of the ‘new’ operator, though. The object just needs to implement [[Construct]]. > then why does: > > var div = new HTMLDivElement(); > > produce a script error? As Anne says, it’s because the object doesn’t have a constructor. > Seems like a perfectly valid thing to do, essentially a shortcut to > document.createElement('div') In the new IDL, you could write [Constructor] interface HTMLDivElement : … { … }; if you wanted to indicate that the interface object must implement [[Construct]]. Whether this is something that is desired on HTMLDivElement would be something for the HTML WG to decide, since they will publish the IDL for HTML 5. -- Cameron McCormack, http://mcc.id.au/ xmpp:[EMAIL PROTECTED] ▪ ICQ 26955922 ▪ MSN [EMAIL PROTECTED]