Hi,
I have just uploaded version 0.5.2 of AspectL to the website. I knew
that there was something wrong with the destructive mixins, but wasn't
aware of where to look for the problem. Now, I have gotten a bug when I
demoed it to someone at ECOOP, and it suddenly became clear what it
was. I have fixed it afterwards, and this is the only change in this
release.
The bug had to do with the fact that the mixins were not adaptable for
new metaclasses. This could be fixed by the usual xyz-using-class trick
employed in the MOP. The bug showed up in conjunction with special
classes - the special slots were only "accidentally" handled correctly
by destructive mixins in the cases I have tested, but not in all cases.
See al-special-class.lisp for an example of how to add your own
metaclasses to the destructive mixins framework.
BTW, I had a rough implementation in which I could apply destructive
mixins to single objects instead of whole classes. However, it had some
glitches, therefore I have removed that feature. Please let me know if
you would like to see it added to AspectL.
Next on my todo list is to port AspectL to other CL implementations,
most probably SBCL first because the McCLIM people want to use
AspectL...
That's it for now.
Pascal
--
Tyler: "How's that working out for you?"
Jack: "Great."
Tyler: "Keep it up, then."