Hi,
I have just released AspectL 0.6.2. See
http://common-lisp.net/project/aspectl/
Among other changes, a major change/addition is this:
Special classes need a special default superclass in order to work. For
convenience reasons, it is implicitly added to a class definition so
that programmers don't need to worry about that default superclass.
However, in previous versions of AspectL, I have made a few mistakes
here: Forward referenced classes were not handled correctly, and under
certain circumstances invalid class hierarchies were created. These
mistakes are now fixed, thanks to a fruitful discussion in
comp.lang.lisp with Marco Baringer, Bruno Haible, Simon Katz and Kenny
Tilton. Special thanks go to Bruno Haible for insisting on leaving
COMPUTE-CLASS-PRECEDENCE-LIST alone and to Simon Katz for the idea of
how to handle forward referenced classes by fixing the list of direct
superclasses after they have been changed to "real" classes. AspectL now
also provides two functions INITIALIZE-CLASS-METAOBJECT and
REINITIALIZE-CLASS-METAOBJECT in the AL.CLOS-MOP package that implements
all the necessary machinery to make these things work and that you can
reuse for your own metaclasses.
Pascal
--
Tyler: "How's that working out for you?"
Jack: "Great."
Tyler: "Keep it up, then."