Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [aspectj-users] when final is not

I don't like the idea of adding Xlint warnings. I'd rather use declare 
warning to explicitly add such warnings, and even encourage the community to 
contribute such to a library of common rules. 

I definitely don't want Xlint warnings for advice that affects non-public 
methods that aren't accessible to the aspect, and I think advice on final 
methods is in the same category. I personally don't like adding Xlint 
warnings for ITD's on final classes, but I think there's a reasonable 
argument in favor of them.

Ron

On Wed, 14 Jan 2004 16:58:29 -0500, Echlin Harmer, Elizabeth wrote
> I agree with Ron that the ability to specify the constraints you 
> want on your aspect using isFinal() or @privileged is a better way 
> to go than to limit the aspect compiler.
> 
> And yes Yes YES an Xlint option, because we know that the mistake the
> programmer is likely to make is not to forget to declare error if the
> pointcut unintentionally hits one of the known final classes, but to 
> fail to realize that there is a final class somewhere down in the 
> depths of the system that might be affected by the aspect, and so 
> not even think about the possibility that such a constraint might be 
> needed.
> 
> Finally, I agree with Gregor that the implementation is not the 
> aspect, and we want to watch what unconscious assumptions and mental 
> models we are using for thinking and writing about aspects.
> 
> However, I also think it is possible to say 'the aspect modified my final
> class' while thinking 'the aspect modified _the externally visible behaviour
> of the part of the system implemented within_ my final class'. As 
> long as we are careful about what we are thinking, and are confident 
> that our listeners won't be confused or misled, IMHO the concise 
> form is acceptable.
> 
> Elizabeth



Ron Bodkin
Chief Technology Officer
New Aspects
m: (415) 509-2895


Back to the top