[Pharo-project] Ideas for CompiledMethod proxies?

Eliot Miranda eliot.miranda at gmail.com
Sat Nov 20 19:50:48 CET 2010


On Sat, Nov 20, 2010 at 10:28 AM, Mariano Martinez Peck <
marianopeck at gmail.com> wrote:

>
>
>>> Thanks Levente. I like this idea. I've been doing proxies for classes,
>>> normal objects, etc and I never thought about using SmallIntegers. This
>>> is
>>> because I usually need to do a #become:   between the original object and
>>> the proxy. But in this case this is not needed, since I just need a
>>> methodDict at: put: .  And this is a good idea because I don't need an
>>> object header per proxy instance.
>>>
>>> I will try to implement this. Thank you very much for all the answers.
>>>
>>
>> I did a quick implementation and it works. The only problem is that you
>> can't swap-out a method that's used by the swap-in code.
>>
>>
> It doesn't work here. It seems I cannot use SmallInteger like methods. The
> #run:with:in: is never call and the image crashes.
>

That's simply a bug and we should fix it.  What crashes, the Interpreter,
Cog or both?  Prepare a reproducible test case (image, change set etc) and
we can try and fix this.

best
Eliot


>
> Example (be carefull, it may crash your image):
>
> TestCase methodDict at: #assert: put: 4.
> TestCase new assert: 'zaraza'.
>
> I am checking the VM side now to see if I find something.
>
> Cheers
>
> Mariano
>
>
>
>>
>> Levente
>>
>>
>>> Mariano
>>>
>>>
>>>
>>>>
>>>> Levente
>>>>
>>>>
>>>>  Thanks
>>>>>
>>>>> Mariano
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gforge.inria.fr/pipermail/pharo-project/attachments/20101120/cf81dd8b/attachment.htm>


More information about the Pharo-project mailing list