W3C home > Mailing lists > Public > public-webapps@w3.org > October to December 2008

Re: [WebIDL] questions

From: Cameron McCormack <cam@mcc.id.au>
Date: Thu, 27 Nov 2008 17:14:14 +1100
To: Kartikaya Gupta <lists.webapps@stakface.com>
Cc: public-webapps@w3.org
Message-ID: <20081127061414.GA23853@arc.mcc.id.au>

Kartikaya Gupta:
> I have a few other questions that I ran into while implementing:
> 3. Can [PutForwards] be chained? That is, what happens if the
> attribute B on J also has a [PutForwards] pointing to something
> else? If chaining is allowed, how are infinite loops dealt with? The
> algorithm in section 4.4.3 seems to imply that chaining is allowed,
> since step 32 ends up calling [[Put]] on J, which will then run
> through the steps again.

Chaining isn’t specifically disallowed, and, as you say, it will work
because of the way the host object [[Put]] algorithm is written.  I’ve
added a note to point this out and to disallow cycles:


> 4. Section 3.8.3 says that [ImplementedOn] takes an "identifier list",
> yet there is no such thing defined in the spec. I assume this will
> look something like [TheExtendedAttribute=identifier,identifier,...].
> Rather than introducing a new syntactical construct, would
> it make more sense to simply allow the ImplementedOn xattr
> to be used multiple times on the same interface (i.e.
> [ImplementedOn=Node,ImplementedOn=Window])?

Yes, I removed the extended attribute identifier list argument
prematurely, it seems.  I’ve done as you suggested for now, to avoid
complicating the grammar.

> Also, the Java example for ImplementedOn says "EventTarget et =
> (Node)n" instead of "EventTarget et = (EventTarget)n".


> And finally, a typo in section 4.4, the third bullet point. I think
> the word "value" is missing at the end of the sentence "... IDL value
> to an ECMAScript."


Thanks for the comments,


Cameron McCormack ≝ http://mcc.id.au/
Received on Thursday, 27 November 2008 06:15:04 UTC

This archive was generated by hypermail 2.3.1 : Friday, 27 October 2017 07:26:12 UTC