Thanks for sharing that with us! Stef
On May 4, 2011, at 5:32 PM, Lemuus wrote: > Hello all, > > We are happy to announce the release of PHANtom: a modern aspect language for > Pharo. > > PHANtom was built taking into account recent advances in aspect language > features such as dynamic advice rescheduling, reentrancy management, and > scoping strategies for deployment. The advanced features are not all > implemented yet, but the 'normal' features work and are well-tested (about > 130 unit tests) so we are relasing it to the world for you to try out. We > hope PHANtom can help you to solve some cross-cutting code problems. > > An overview of the language can be found at http://pleiad.cl/PHANtom Please > try it out, see if it works for you, all your comments are welcome! > > More details: > > I am doing this as my engineering thesis, under the guidance of Prof. Johan > Fabry. > > PHANtom works in Pharo 1.2.1 and in 1.3, and also in PharoCore. > > Right now, PHANtom uses Method Wrappers in its' implementation, just like the > AspectS language did. But the plan is once we have all features implemented, > that we will start compiling using the Opal compiler of Pharo, to make > everything go faster. > > I just put one example from the website here so you can see what it looks > like: > > asp := PhAspect new > add: (PhAdvice new > pointcut: (PhPointcut new > receivers: 'SystemWindow+'; > selectors: 'position:'; > context: #(#receiver #arguments)); > advice: [:context | > Transcript show: context receiver. > Transcript show: ' moved to: '. > Transcript show: context arguments; cr.]; > type: #after). > asp install. > > Note: the unit tests of pointcuts take a large amount of time to execute, as > some of them match on everything in the image. > > For more info and how to download PHANtom see http://pleiad.cl/PHANtom
