On Tue, Oct 5, 2010 at 9:23 AM, Mariano Martinez Peck <marianopeck@gmail.com
wrote:
Hi. So....if I want to intercept ALL message sends....going to #normalSend is not enough since I have #class, #==, Float>>#+ etc that are executed directly like bytecodes. So...my questions are now:
- Those special selectors are those that are in "Smalltalk
specialSelectors" ? are there more? all from there are special?
- All those "Smalltalk specialSelectors" have their associated bytecode
primitive in Interpreter?? If true, then I should modify all bytecodePrim* in Interpreter. I am right? If I do that, that's all ? I am intercepting everything?
Right. Just modify all of them to eliminate the optimized code and to revert to normalSend. Providing you also look at the perform and method evaluation primitives I think you'll get all sends.
There is another way. Modify the Smalltalk compiler to to use the special selector sends.
Thanks a lot in advance,
Mariano
On Sun, Oct 3, 2010 at 11:09 PM, Craig Latta craig@netjam.org wrote:
Craig Latta has done all this work, talk to him.
Sure, I'd be happy to discuss it.
-C
-- Craig Latta www.netjam.org
- 31 020 894 6247
- 1 415 287 3547