On Oct 1, 2012, at 6:56 AM, David Bruant wrote: > 2012/10/1 Tom Van Cutsem <[email protected]> > 2012/10/1 Tom Van Cutsem <[email protected]> > If yes, then we should ask ourselves the question: is this a useful hook for > regular objects to customize? I think it's not, really (bear in mind that > enumeration can only generate strings (property names), it's a good deal less > generic than iteration) > > Put another way: customizing enumeration is meta-programming, customizing > iteration is not. > I had not seen things from that angle, but it seems like a valid reason for > the apparent inconsistent of the proxy handler API.
I actually think they are both meta-programming hooks, in that they both provided a means for extending the behavior of syntactic constructs of the language. However, I still come to the same conclusion: Defining for-of iteration has high utility and will occur frequently so it should be exposed via a light-weight extension mechanism: a unique name (symbol). Extending for-in enumeration is of little utility and will occur infrequently. For that reason it makes sense for it to be exposed by the more heavy weight proxy extension mechanism. Allen
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

