[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] infinite recursion warning with cflow

This is the paper in which tracematches were introduced:
http://abc.comlab.ox.ac.uk/papers#oopsla2005

This second paper explains things one needs to do in a compiler in
order to get an efficient implementation.
http://abc.comlab.ox.ac.uk/papers#oopsla2007

Note that I am not an author of either of these papers. My work was
mostly on evaluating tracematches *statically*, which involves
heavy-duty whole-program analyses. Therefore it might be best to
address questions regarding the implementation directly to Pavel and
Julian.

Cheers,
Eric

2008/9/29 Andy Clement <andrew.clement@xxxxxxxxx>:
> I am not against looking to add something like this.  It has just never been
> top of my priority list to look into.  Is there a paper you can point me to?
>
> Andy.
>
> 2008/9/29 Eric Bodden <eric.bodden@xxxxxxxxxxxxxx>
>>
>> Good question. Honestly I don't know. Pavel Avgustinov and Julian
>> Tibble have provided a great implementation in abc which produces
>> really fast code - in most situations even without expensive program
>> analyses. I guess it would be a non-trivial addition to the AspectJ
>> compiler but maybe a worthwhile one.
>>
>> I can't speak for Pavel and Julian but my guess is that they would
>> certainly be willing to discuss a possible ajc-based implementation if
>> there's enough interest from the side of ajc users and developers.
>>
>> Eric
>>
>> 2008/9/29 Eric Tanter <etanter@xxxxxxxxxxxxx>:
>> > Hi Eric, all,
>> >
>> > A naive question on this: what is the reason why tracematches don't make
>> > it
>> > into the AspectJ language? they seem to offer simple answer to many
>> > issues
>> > that pop up. Has this been discussed already?
>> >
>> > Cheers,
>> >
>> > -- Éric
>> >
>> >
>> > On Sep 29, 2008, at 10:43 , Eric Bodden wrote:
>> >
>> >> Hi Alex.
>> >>
>> >> Using the AspectBench Compiler you can write a tracematch that does
>> >> that. Using plain AspectJ that's hard to do. You would have to use a
>> >> combination of pieces of advice, if-pointcuts and counters.
>> >>
>> >> Eric
>> >>
>> >> 2008/9/29 Alex Villazon <alex.villazon@xxxxxxxxxxx>:
>> >>>
>> >>> Hi,
>> >>>  Is it possible to write an aspect that prints a message after a
>> >>> giving
>> >>> number of recursive invocations.. and warns that there is a potential
>> >>> infinite recursion?
>> >>>
>> >>>  Or is there any mean to check for example if there is a given
>> >>> sequence
>> >>> of
>> >>> calls in the control flow?
>> >>>
>> >>>  Can I write a pointcut that captures the control flow only when X.f
>> >>> was
>> >>> called 3 times before Y.g?
>> >>>
>> >>> Many thanks
>> >>>
>> >>> Alex
>> >>>
>> >>> _______________________________________________
>> >>> aspectj-users mailing list
>> >>> aspectj-users@xxxxxxxxxxx
>> >>> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>> >>>
>> >>
>> >>
>> >>
>> >> --
>> >> Eric Bodden
>> >> Sable Research Group
>> >> McGill University, Montréal, Canada
>> >> _______________________________________________
>> >> aspectj-users mailing list
>> >> aspectj-users@xxxxxxxxxxx
>> >> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>> >
>> > _______________________________________________
>> > aspectj-users mailing list
>> > aspectj-users@xxxxxxxxxxx
>> > https://dev.eclipse.org/mailman/listinfo/aspectj-users
>> >
>>
>>
>>
>> --
>> Eric Bodden
>> Sable Research Group
>> McGill University, Montréal, Canada
>> _______________________________________________
>> aspectj-users mailing list
>> aspectj-users@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>



-- 
Eric Bodden
Sable Research Group
McGill University, Montréal, Canada