Hi,
I have just released AspectL 0.6 on its website at
http://www.common-lisp.net/project/aspectl/
The most notable improvement is that I have successfully ported AspectL
to a number of Common Lisp implementations beyond LispWorks. It now
runs on the following implementations:
- Allegro Common Lisp (with minor restrictions)
- CMU CL
- LispWorks
- OpenMCL (but not special generic functions)
- SBCL
Apart from some internal changes, porting AspectL to those other
platforms has required one important design change. In AspectL 0.5,
special generic function had to be defined like this:
(defgeneric some-function (some-parameters)
(:generic-function-class special-generic-function))
Now, they have to be defined like that:
(define-special-function some-function (some-parameters)
(:definer some-function*))
You have to provide two names: The first name must be used for calling
a special function whereas the second name (the "definer") must be used
for defining methods. This avoids some deep problems I have faced when
trying to sneak in additional information in the generic function
invocation protocol of the CLOS MOP. In all other respects,
define-special-function acts like defgeneric.
For further details, see the release notes.
Pascal
--
Tyler: "How's that working out for you?"
Jack: "Great."
Tyler: "Keep it up, then."