Given some of the AspectJ-based projects I’ve been on in the past (admittedly not a huge number), there’s some interesting concepts here – the Join-Point Interface seems reasonable nice – it certainly would have simplified lots of cases where I really wanted to bind to particular instances, which he points out. Definitely worth watching, although make sure to click “Fast”, since it’s over an hour at “real” speed.
In this talk I will argue that we don’t need the ‘aspect’ as a separate abstraction mechanism for aspect-oriented program design, and there are good reasons to believe we might be better off without it. Rather, classes and aspects can be unified in a richer notion of class (the classpect). This unification does not significantly compromise the expressiveness of AspectJ-like languages. It improves the conceptual integrity of the programming model. And it improves the compositionality of components under aspect-oriented ‘advising.’