[[Enumerate]] and enumerate and keys trap

Brendan Eich brendan at mozilla.org
Mon Oct 8 13:21:34 PDT 2012


Tom Van Cutsem wrote:
> 2012/10/8 Allen Wirfs-Brock <allen at wirfs-brock.com 
> <mailto:allen at wirfs-brock.com>>
>
>
>     Internal abstraction operations (helper functions) are just
>     editorial devices that reduce the need to duplicate (and perhaps
>     introducing errors) specification steps.   If it makes sense I'll
>     use one in specifying these traps, but it doesn't make a normative
>     difference to the specification.
>
>
> I understand. That's why I think it's perfectly OK to use helpers such 
> as GetPropertyKeys internally, but to not expose them via the Proxy 
> API. With my above suggestion, we get a clean spec/trap interface and 
> at the same time less redundancy in the spec.

Just to make sure, a couple more points to get agreement on:

* Spec internal helper structure matters, both in terms of aesthetics 
and best-practices from software engineering, so people will opine on it 
from time to time and it's fair game for comment.

* Implementors do look to match the spec where optimization is not 
critical, even on internal helpers. This is not just spec-following, of 
course -- the logic driving shared helpers being factored out applies to 
implementations as well as spec. Or really, spec is just a paper 
implementation.

/be


More information about the es-discuss mailing list