WOW.. Thank you guys for such answers!! It seems this is an hot topic.

However, now I will try to hack something on top of Spy and look at Phantom in 
the weekend ;)

Cheers,
R

On Dec 6, 2013, at 10:35 AM, Marcus Denker <[email protected]> wrote:

> 
> On 06 Dec 2013, at 10:01, Roberto Minelli <[email protected]> wrote:
> 
>> Hi guys,
>> 
>> I am using Spy for my project, and I need to do something which, on top of 
>> my knowledge, is not supported.
>> 
>> Here is the point: Spy allows to insert code before (#beforeRun:with:in:) 
>> and after (#afterRun:with:in:) and works perfectly.
>> 
>> Now suppose I want to inject some code *inside* the method, e.g.,
>> 
>> aMethodToBeProfiled
>> 
>>      do something
>> 
>>      "Injected code accessing some fields of the current instance of this 
>> object”
>>      Transcript show: self field asString.
>> 
>> Is there any support for this?
>> 
> 
> Sadly not yet… we plan to have real support for this in Pharo4. 
> 
> The AOP solutions (both AspectS and Phantom) do *not* support point cuts on 
> sub-method 
> concepts like “instance variable access”.
> 
> The stuff I did for my PhD supports this quite nicely…  but that I have not 
> yet ported to Pharo.
> (The idea is to do an “engineering grade” pass over this and put it in Pharo 
> not as a research
> prototype but as a real, production ready concept).
> 
> I really need to push this… people need it.
> 
> There is a way to do all this on a lower level (e.g. AST transformation or IR 
> transformation)… I will write a mail how to
> do that later the weekend.
> 
>       Marcus


Reply via email to