June 01, 2008

New versions of Closer libraries released

I have just released new versions of all Closer libraries, including Closer to MOP and ContextL.

A major change that affects all libraries is that I have dropped support for Macintosh Common Lisp, and "replaced" OpenMCL with Clozure Common Lisp. Furthermore, the dependency of Closer to MOP to LW-Compat has been removed due to requests by users, but a dependency of ContextL to the portable-threads librarie of the GBBopen project has been added.

Other highlights include:

Closer to MOP 0.5

  • In MCL, OpenMCL and Clozure Common Lisp, funcallable-standard-object is now exported from Closer to MOP.

  • Fixed the lack of :generic-function-argument-precedence-order-returns-required-arguments in Allegro Common Lisp.

  • Ensured that a defgeneric form makes a generic function metaobject available in the compile-time environment. Otherwise, defmethod may not yield a method of the correct method metaobject class.

  • Added support for compute-discriminating-function in Clozure Common Lisp and OpenMCL, based on code provided by Slava Akhmechet.

  • Added a classp predicate (due to Willem Broekema).



ContextL 0.5

  • Added :in as an alternative for :in-layer in the various define-layered-xyz macros.

  • ContextL now depends on portable-threads of the GBBopen project. This is done for locking critical sections to ensure thread safety of ContextL.

  • Added new functions active-layers and (setf current-layer-context).

  • Added a garbage collector for layer caches, such that redefinition of layers or certain methods in the ContextL MOP have an effect.

  • Simplified mapping of layer-related names to internal names, which should also make things easier to read when debugging ContextL programs.



MOP Feature Tests 0.45

  • Added new recognized standard feature :generic-function-argument-precedence-order-returns-required-arguments.

  • Added a new known extra feature for SBCL (since SBCL version 1.0.14).



The libraries can be downloaded from the Closer Project and are asdf-installable, as usual.

No comments: