On Sat, 21 Oct 2006, Ganesh Sittampalam wrote:
> On Sat, 21 Oct 2006, Oege de Moor wrote:
>
>> Further suggestions for improvement would be very welcome, especially
>> before
>> I travel to Italy on Monday. As you can see, I go quite deeply into the
>> POPL
>> paper, but I intend the last part of the talk to be lighter, hopefully
>> stimulating some discussion on the AspectJ choice of joinpoints [throw it
>> out! power to the people!], and open modules.
>
> I'm with Eric on the subject of Jimple. Why is an intermediate representation
> that is designed as an intermediate language for compiler optimisation a good
> choice for the semantic basis of pointcuts? If you literally allow every
> Jimple statement to be a joinpoint shadow, then they become sensitive to the
> order of expression evaluation and the fact that Jimple chooses to inline
> JSRs (to name two examples off the top of my head). I agree that the AspectJ
> set is poorly defined, but any principled replacement has to have a firm
> basis in one or both of the Java specification and the JVM specification.
I do not see why it is worse than advising private method calls: they
could be inlined too.
I do see there are many examples of interesting joinpoint selections that
can only be expressed if you allow access to every statement, and every
control flow edge. You don't *need* to look at Jimple, it's just there for
power users who want to write pointcuts that (for instance) depend on
dataflow.
You could argue it is more intuitive to allow arbitrary queries over the
whole AST, but that will make the queries very complicated compared to
expressing the same property over Jimple.
Anyway, I intend the second part of the talk to be controversial, and
generate a lot of hot debate!
-O
Received on Sat Oct 21 17:46:51 2006
This archive was generated by hypermail 2.1.8 : Tue Mar 06 2007 - 16:13:30 GMT