[DiSL-user] Running DiSL; pre-print of ShadowVM paper

Lukas Marek lukas.marek at d3s.mff.cuni.cz
Mon Oct 7 15:31:09 CEST 2013


On 10/07/2013 02:46 PM, Michael Steindorfer wrote:
> I really like the separation of concerns within ShadowVM, to use separate VM for certain jobs.
> The scope filter in DiSL works on package level, right? How do you do filter objects by interface conformance, something similar to AspectJ's "+" that you can use in point cuts?

We don't currently support similar functionality at weave time. The main 
reason is that we don't want to load whole class hierarchy when class is 
being loaded (details below).

If you want to filter (during weave time) only classes that directly 
implement some interface you can write custom guard. I can help with 
that if you are interested.

If you want similar behavior as in AspectJ, you have to check it during 
run-time (using instaceof). This may not be optimal as you have to 
instrument every potential method (every method in program if you don't 
know interface method names upfront).

Filtering using interface is not supported as we would need to load 
whole class hierarchy before the class gets instrumented which would 
alter the loading order. Support for this was planned and we had some 
initial prototypes but the essential parts are still missing.

NOTE: As there is an increasing amount of users last days :), I'm trying 
to offload the support a bit among more people. We have crated a user 
mailing list at disl-user at d3s.mff.cuni.cz.

Lukas




More information about the Disl-user mailing list