- Mar 18, 2012
-
-
Pascal Costanza authored
Improved separation of base and partial initargs in partial-class and layered-class, to improve extensibility in metaobject subclasses. Ignore-this: ea19afb975e9150aa48286ad9036d1df darcs-hash:636424ad65a7dee6c85be8736d4ca7db73d775fa
-
- Aug 29, 2010
-
-
Pascal Costanza authored
Removed a subtle bug when finalizing classes that are both special and partial, which was exposed by subtle changes in PCL in SBCL 1.0.42. Ignore-this: f54641edd4ecc4dd7db49612d38aa82c darcs-hash:479b9d6f300c9456c0789b83974a83d44fa762a6
-
- Feb 02, 2010
-
-
Pascal Costanza authored
Ignore-this: 8562c17c6a8cc5e34d542426d3f31b17 darcs-hash:0d1655a5d920bd2f3fb3f861aba369220830180f
-
- Nov 11, 2009
-
-
Pascal Costanza authored
Ignore-this: e194502be15d6dc9bb692a6f647ebaab darcs-hash:225e9c7c65e65e9c86ae35c61c6291dc9b2c07a9
-
- Apr 21, 2007
-
-
Pascal Costanza authored
This version of ContextL (0.4) incorporates several minor and major changes as a preparation towards a 1.0 release. Here is a list of the changes: --- Changes in the visible API --- + The functions activate-layer and activate-layer-using-class have been renamed to adjoin-layer and adjoin-layer-using-class, and deactivate-layer and deactivate-layer-using-class have been renamed to remove-layer and remove-layer-using-class. The new names reflect better what these functions actually do. + Removed the functions funcall-with-layers and apply-with-layers. Use the functions funcall-with-layer-context and apply-with-layer-context instead. + The deflayer macro doesn't take a :layer-class option anymore, but instead a :metaclass option. (I have tried to abstract from the internal representation as CLOS classes, but that turns out to be useless for the time being.) --- Additions to the visible API --- + Added the functions funcall-with-layer-context and apply-with-layer-context. + Added the function current-layer-context. This captures the set of currently active layers, which can later be reinstalled with funcall-with-layer-context and apply-with-layer-context. + Added the metaclasses layered-function and layered-method. However, they should better not be used directly. For programmatically creating layered functions and methods, better use the functions ensure-layered-function and ensure-layered-method. + Added the readers layered-function-definer, layered-function-argument-precedence-order, layered-function-lambda-list. + Added the readers layered-method-lambda-list, layered-method-specializers, layered-method-layer. + Added the readers partial-class-defining-classes, partial-class-defining-metaclass and the class partial-object, which is the default superclass for partial classes. + Added the readers slot-definition-layered-readers and slot-definition-layered-writers. + You can now specify an :in-layer option in slot specifiers. This means that a slot within a define-layered-class form can be declared to be in a different layer than the respective class itself. This allows, for example, to group slots of different layers in the same define-layered-class form. + Layers and layered functions can now also have uninterned symbols as names. This enables a form of anonymous layers and anonymous layered functions when gensym is used to create names for them. + Added the function ensure-layer for programmatically creating layers. --- Internal changes, which are not necessarily visible --- + If someone tries to define default initargs for singleton classes or layers, ContextL emits a warning. The error handling is improved for the case when the :allocation for a singleton or layer-specific slot is set to something else than :class. + Some of the :in-layer keyword parameters to internal functions have previously taken lists of layers for technical reasons. This is not the case anymore. + Changed the handling of the :defining-metaclass option for partial classes. + Layered direct slot definition metaobjects don't take :layered-reader, :layered-writer and :layered-accessor initargs anymore, but rather :layered-readers and :layered-writers, which is closer to how the CLOS MOP works as well. + Added methods for print-object for the major classes and metaclasses, such that, for example, debug output now prints more nicely. darcs-hash:592a90c3f26522c79fcebd6c89449ae62c44dd41
-
- May 01, 2006
-
-
Pascal Costanza authored
darcs-hash:ca4a93f92348e4ca98899b381331be425ed207c8
-
- Nov 30, 2005
-
-
Pascal Costanza authored
darcs-hash:f2476b5a4277a03de8538b5bd6d1462191771e94
-
- Sep 10, 2005
-
-
Pascal Costanza authored
It's now possible to say with-inactive-layers, and the functional equivalents to with-active-layers have also been adapted to enable inactivation of layers. During the process, a number of bugs have been revealed, especially wrt the previous removal of &allow-other-keys and problems related to finalize-inheritance in Allegro Common Lisp. darcs-hash:aff71ea96cd5e5cc87944cc24bd01b5f3f5decdd
-
Pascal Costanza authored
darcs-hash:0fa0ec7b33bef78dac7de825ba35a8774838a348
-
- Aug 22, 2005
-
-
Pascal Costanza authored
darcs-hash:ff9f06424ff8aa76528f8c3c9f67c9b9f5db3b37
-