Waiting for Bill's review before sr'ing fully. At first glance, the jsapi.h and jsclass.h changes look reasonable. I like the fact that IIUC it really means strictly less work and less to understand for implementers of those callbacks. Also actually kind of like replacing 'jsval *', which is rather ambiguous about the semantics (is it an array?) with JSMutableHandleValue. I still wonder how many different kinds of things we'll have in play at the end, but this does seem like a step in the right direction, and not too risky. (I'll think about it more carefully when I see what Bill noticed that I didn't. ;-) )