<br><br><div class="gmail_quote">On Sun, Sep 26, 2010 at 5:59 AM, Mariano Martinez Peck <span dir="ltr"><<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br><br><br><div class="gmail_quote">On Sun, Sep 26, 2010 at 1:45 PM, stephane ducasse <span dir="ltr"><<a href="mailto:stephane.ducasse@gmail.com" target="_blank">stephane.ducasse@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex">
<br>
Eliot<br>
<br>
I wanted to understand what: ' Have various places check for isOopCOmpiledMethod:<br>
rather than isCompiledMethod: to allow SmallIntegers to be used as methods.'<br>
means<br>
in which circumstances do we want to have smalltalkIntegers used as methods?<br>
when we put an object instead of a compiled method and that by accident this is an integer?<br>
<br></blockquote><div><br><br>Eliot, first of all, thanks A LOT!!! This is really important for us....wiiii we have TestCoverage again :)<br><br>BTW, I think I found something related to what Stef says....In normal squeakVM :<br>
<br>testAddNumbers<br> self assert: (self add: 3 with: 4) = 7.<br> self assert: (self perform: #add:with: withArguments: #(3 4)) = 7.<br><br>this is ok, since (self perform: #add:with: withArguments: #(3 4)) answers 7.<br>
But with this new CogVM, there is a primitiveError.<br><br>so...we can update the test to:<br><br> self should: (self perform: #add:with: withArguments: #(3 4)) rise: Error.<br>
<br>or something like that....but this test will fail with normal VM..<br><br>what we should do?<br></div></div></blockquote><div><br></div><div>Leave the test be. The test should not fail. I should fix Cog. Now I have the difficult part done fixing related should not take as long.</div>
<div><br></div><div>But I don't see this failure in the Squeak tests. Can you email me the Pharo version of Tests-ObjectsAsMethods?</div><div><br></div><div>TIA</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="gmail_quote"><div><br>thanks<br><br>mariano<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex">
Stef<br>
<div><div></div><div><br>
<br>
><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>
<br>
</div></div></blockquote></div><br>
<br></blockquote></div><br>