Function VS eval is another story and Function does not suffer scope and context, eval does.<div><br></div><div>Minifier don't care about function, Firefox seems to optimize the body same as it does with any other function but still ... this is another story and if a function does 1 operation rather than 10 I can't see how this can be slower.</div>
<div><br></div><div>Again, does not matter for this topic, neither for my bench since the function creation is one shot per type definition plus that is the shim part Firefox should ignore in favor of ctypes while other browsers are, in therms of instance creation and usage, basically as fast as other two loops.</div>
<div><br></div><div>So here I don't understand why Sam had to bring it into the discussion ... anyway, still missing the answer from you Brendan:</div><div><br></div><div>Why JS.next is bringing StructType and requires an "object description" per each created instance ?</div>
<div><br></div><div>What is wrong with new DefinedStruct(propA = 123, propB = 456); or why this has not been considered ???</div><div><br><br><div class="gmail_quote">On Sat, Sep 17, 2011 at 9:08 PM, Brendan Eich <span dir="ltr"><<a href="mailto:brendan@mozilla.com">brendan@mozilla.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">On Sep 17, 2011, at 3:02 PM, Brendan Eich wrote:<br>
<br>
> An exception, or special case if you will: using Function or eval up front, hoisted and common'ed out of loops, and (this is crucial<br>
<br>
</div>"for eval", I meant to write here.<br>
<div class="im"><br>
<br>
> ) not called from a function that you want optimized, in order to generate optimized JS. This kind of "query optimization" or JS-in-JS specialization is done, e.g. by ExtJS and other Ajax libraries. Also by a simple assembly-to-JS trace compiled emulator that Robert O'Callahan blogged about here:<br>

><br>
> <a href="http://robert.ocallahan.org/2010/11/implementing-high-performance-emulator_01.html" target="_blank">http://robert.ocallahan.org/2010/11/implementing-high-performance-emulator_01.html</a><br>
<br>
/be<br>
</div><div><div></div><div class="h5">_______________________________________________<br>
es-discuss mailing list<br>
<a href="mailto:es-discuss@mozilla.org">es-discuss@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/listinfo/es-discuss</a><br>
</div></div></blockquote></div><br></div>