<br><br><div class="gmail_quote">On Wed, Apr 2, 2008 at 4:36 AM, Andreas Raab <<a href="mailto:andreas.raab@gmx.de">andreas.raab@gmx.de</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
One of my problems with Exupery is that I've only seen claims about byte code speed and if you know where the time goes in a real-life environment then you know it ain't bytecodes. In other words, it seems to me that Exupery is optimizing the least significant portion of the VM. I'd be rather more impressed if it did double the send speed.</blockquote>
<div><br>I share similar views. In the purest of OO systems, everything is a message send except the things that are not and the only things that are not, are primitives. Message sends translate directly into some sort of canned set of machine code and you apply your compiling and optimizing dexterity to the primitives. Optimization is done through PICs and recursive inlining of primitives and recompiling/optimizing. Any method that isn't a primitive is just doing message sends, but any method could potentially get compiled into a primitive through the process of inlining.<br>
<br>Of course, Exupery isn't trying to reinvent the world either. And, I'm sure aspects of the exupery compiler could be leveraged in a system that was closer to this kind of purity.<br><br>- Stephen<br></div></div>
<br>