<span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">I would appreciate anyone interested in objects-as-methods on Cog pounding on the latest Cog VMs (<a href="http://www.mirandabanda.org/files/Cog/VM/VM.r2313/" target="_blank" style="color: rgb(0, 0, 204); ">http://www.mirandabanda.org/files/Cog/VM/VM.r2313/</a>) as this involved substantial changes to method lookup/inline cacheing machinery and there could easily be bugs. The tests run, but they're insubstantial compared e.g. to a full coverage test.<br>
<br><div>best</div><div>Eliot</div></span><div><br></div>(repeat with fixed email address: squeakfountation => squeakfoundation)<div><br><div class="gmail_quote">On Sat, Sep 25, 2010 at 9:20 PM, <span dir="ltr"><<a href="mailto:squeak-dev-noreply@lists.squeakfoundation.org">squeak-dev-noreply@lists.squeakfoundation.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br>
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:<br>
<a href="http://www.squeaksource.com/VMMaker/VMMaker-oscog.33.mcz" target="_blank">http://www.squeaksource.com/VMMaker/VMMaker-oscog.33.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: VMMaker-oscog.33<br>
Author: eem<br>
Time: 25 September 2010, 7:13:51 am<br>
UUID: 733b7c50-b973-4ca0-9831-5c84d09032bf<br>
Ancestors: VMMaker-oscog.32<br>
<br>
OSCogVM:<br>
Support object-as-method:<br>
Eagerly evaluate the interpreter version of a primitive<br>
to ease the object-as-method implementation and to<br>
improve interpreter performance.<br>
Refuse to enter anything that isn't a CompiledMethod<br>
into the method-lookup cache to avoid open PICs having<br>
to check for valid compiled methods.<br>
Have various places check for isOopCOmpiledMethod:<br>
rather than isCompiledMethod: to allow SmallIntegers to<br>
be used as methods.<br>
Interpreter:<br>
Have various places check for isOopCOmpiledMethod:<br>
rather than isCompiledMethod: to allow SmallIntegers to<br>
be used as methods.<br>
Slang:<br>
support super sends by expanding them at translation<br>
time. This allows CoInterpreter>>addMethodToCache<br>
to avoid cacheing non-compiled methods via a super<br>
send, avoiding duplicating SrackInterpreter's method.<br>
<br>
</blockquote></div><br></div>