New release of Closer to MOP (v0.6)
Pascal Costanza <pc@...
2009-12-04 21:12:30 GMT
I have just released a new version of Closer to MOP. This is a major new release, with a couple of substantial improvements:
+ Support for Embeddable Common Lisp has been completely reworked, and ECL is now officially supported in
Closer to MOP (from ECL 9.12.2 on).
+ Macintosh Common Lisp has been reactivated as an open source project, and the support for MCL in Closer to
MOP has been resurrected.
+ Scieneer Common Lisp is now supported to some degree as well.
+ In total, Closer to MOP now supports 9 different Common Lisp implementations: Allegro Common Lisp,
CLisp, Clozure Common Lisp, CMU Common Lisp, Embeddable Common Lisp, LispWorks, Macintosh Common Lisp,
Steel Bank Common Lisp, and Scieneer Common Lisp.
+ I have added support for the complete generic function invocation protocol. This includes
COMPUTE-DISCRIMINATING-FUNCTION, and COMPUTE-EFFECTIVE-METHOD, and MAKE-METHOD-LAMBDA (!). On
top of that, Closer to MOP adds a missing piece in the protocol, namely
COMPUTE-EFFECTIVE-METHOD-FUNCTION, for turning an effective method form into an actual function.
Note, however, that support for the generic invocation is not available in all supported Common Lisp
implementations: CMU Common Lisp, Macintosh Common Lisp and Scieneer Common Lisp unfortunately don't
provide the necessary extensibility to support the protocols at all, and ECL has the slight restriction
that method lambda forms have the same lambda list as the generic fun
ction for which they are defined, and not the format as specified in AMOP.
+ In previous Closer to MOP versions, the standard metobject definition macros and functions (DEFCLASS,
DEFGENERIC, DEFMETHOD, ENSURE-CLASS, ENSURE-GENERIC-FUNCTION, etc.) sometimes forced the use of the
replacement 'standard' metaobject classes of Closer to MOP (STANDARD-CLASS,