On Wed, May 4, 2011 at 5:32 PM, Lemuus <[email protected]> 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/PHANtomPlease > 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. >
Congratualtions for the nice work!! > > 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 don't understand why you need the Compiler. Tricky things like bytecode rewriting are mostly used in static languages because they lack all we have :) I mean, why not taking advantage of the dynamism of Smaltlalk and the fact of having classes and methods as first-class objects is not enough ? Cheers Mariano 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 > -- Mariano http://marianopeck.wordpress.com
