- Feb 17, 2013
-
-
Pascal Costanza authored
Ignore-this: a238f198b88cf2a79873fe1553e46a85 darcs-hash:f4626f6c6f9625473efff92117afbc801db580ec
-
- Dec 09, 2012
-
-
Pascal Costanza authored
Ignore-this: fd1fa7c860edff2e42231f40acbcfecc darcs-hash:f3a05d764ef1af55c30a8c785c788a8553bc0368
-
Pascal Costanza authored
Added a level of without-symbol-access to object initialization (in preparation for support for ABCL). Ignore-this: 95630ccdb73a5eb90c6f72d4af4ecf03 darcs-hash:4ac06cc02d0bee748168d9906a758bfdb07be4e6
-
- 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
-
- Mar 13, 2012
-
-
Pascal Costanza authored
Ignore-this: ca8e0f6bce82e3b1e5f0b97fc0ffef67 darcs-hash:2c3857e0fea36f1db737f6d9c037c0744984039d
-
- Feb 25, 2012
-
-
Pascal Costanza authored
Ignore-this: 309513f5f1fe1abc7c4c209ac5d39c41 darcs-hash:35c2d50ca9510577bb67fd50beb5f80b0ca7fd83
-
- Nov 01, 2011
-
-
Pascal Costanza authored
Ignore-this: 97d18745bb79abadcfa9c4d32e595d63 darcs-hash:ad8dfcbfa27d1d46142cc25ed478586ad0ad3784
-
- Aug 29, 2010
-
-
Pascal Costanza authored
Ignore-this: ac69c29f85a64f4e56062092b4118f73 darcs-hash:ebe384702fcfad0d885b16e8fe7747fb2433f946
-
- Apr 11, 2010
-
-
Pascal Costanza authored
Ignore-this: 7c4ce3a3e615e0f1c1daa246c74578be darcs-hash:37fa3643d5a706978891308c6991fd484baeafc1
-
- Feb 01, 2010
-
-
Pascal Costanza authored
Ignore-this: 2a93f4c82f537dc564a8ab299ddfe696 darcs-hash:2c2e31b0e37d7834e4ca18db4793218e6c8a1946
-
- Jan 20, 2010
-
-
Pascal Costanza authored
Ignore-this: 30f17b063b69611fc6a0115558d166f9 darcs-hash:37832bdccf76d9c5cc4e2b0a5613bf8fe8e8d561
-
- Nov 30, 2009
-
-
Pascal Costanza authored
Ignore-this: c649a8c5246a8d79221281e70dde41a9 darcs-hash:9edb559d7cb565632dd7a455e76fd317faaea52d
-
- Nov 21, 2009
-
-
Pascal Costanza authored
Provide dynamic-wind in a separate system definition. Provide support for that part of ContextL for SCL. Ignore-this: 46fc99f81d7dad993879888f98c363cf darcs-hash:c31cefdbf28ca237183e26a469c207e8b3e641f9
-
- Nov 14, 2009
-
-
Pascal Costanza authored
Ignore-this: f50abc037fe64577b988b396d8291c42 darcs-hash:35a1db0c59d883e4aea8b44867c8e6d7eee5b594
-
Pascal Costanza authored
Fixed and simplified conditionalization for Clozure Common Lisp (to fix clashes with MCL, and to remove mentions of OpenMCL). Ignore-this: 426f149224ad727d57db847ae7bcc50e darcs-hash:319e6083ba6e67524227c340717dca85671e52ea
-
- Mar 23, 2009
-
-
Pascal Costanza authored
Ensured that reinstalling a dynamic environment also updates the dynamic wind stack (due to Theam Yong Chew). darcs-hash:e1bfbe403d60d7af110f0b84330853976782d08c
-
- Feb 07, 2009
-
-
Pascal Costanza authored
darcs-hash:97398fbb3d8a04d995b021dfcf918e33dac13831
-
Pascal Costanza authored
darcs-hash:bdf618e82fa8a8aacf32c041a1a6be5597642a69
-
Pascal Costanza authored
darcs-hash:7a53a0dc61acabeafcdfcd98bc490d30157f960e
-
Pascal Costanza authored
darcs-hash:67f0f4e049799e85a6c1a266fcae8a0c3f1cd4a2
-
- Sep 20, 2008
-
-
Pascal Costanza authored
darcs-hash:0f95a028733b23c56cd328636636a63893575159
-
- May 09, 2008
-
-
Pascal Costanza authored
darcs-hash:96d077eac9c69d010ec8fec60371f3932eaf5082
-
- Apr 05, 2008
-
-
Pascal Costanza authored
darcs-hash:e519579766c4bddbb88ba327d872f28e9fa45dae
-
- Nov 26, 2007
-
-
Pascal Costanza authored
darcs-hash:ffeefed965f2d5cd11f814f5845625bea85b52cf
-
Pascal Costanza authored
darcs-hash:fdc4c0754070dbeb77febc98cea06e8ae2e8af01
-
Pascal Costanza authored
darcs-hash:94c4f644280633402c338a1ee7e845593391eee2
-
Pascal Costanza authored
Whenever a layer definition is reinitialized (for example by calling reinitialize-instance or by evaluating a deflayer form for an already existing layer), all its entries in the layer activation caches are removed. This guarantees that adjoin-layer-using-class and remove-layer-using-class are called again when such a layer is activated or deactivated, even if those two generic functions have previously returned t as second values for that layer. Since layer-makunbound is implemented in terms of (setf find-class) and (setf class-name), which triggers a call to reinitialize-instance according to the CLOS MOP specification, this means that layer-makunbound causes the respective layer to be removed from the caches as well. Likewise, if adjoin-layer-using-class and remove-layer-using-class are specialized on a particular layer metaclass, all entries for layers of that layer metaclass are also removed from the layer activation caches. This happens also when methods for these generic functions are redefined. darcs-hash:3fa63d976bbdcff0ad9a75afc1fa0db696ec8139
-
- Sep 26, 2007
-
-
Pascal Costanza authored
darcs-hash:c2082598414703deff9182acc8c97bb6a3b17731
-
- Sep 10, 2007
-
-
Pascal Costanza authored
darcs-hash:88ef5b1bafa84e6771285eb28de557f3a3948999
-
- 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
-
- Apr 07, 2007
-
-
Pascal Costanza authored
Fixed bugs in the implementation of special classes / special slots, especially wrt class reinitialization. darcs-hash:ea4f62b5b48d08a8ddb29da8ee623b254ea01fc7
-
- Dec 28, 2006
-
-
Pascal Costanza authored
darcs-hash:82cd93ee9cb7a130bdaeaaa8b02a2579c6c2cc48
-
- Dec 27, 2006
-
-
Pascal Costanza authored
darcs-hash:257138739a592b3af4d939d83040d1c8628851d6
-
- Dec 16, 2006
-
-
Pascal Costanza authored
darcs-hash:a0a341214782bc5e7bb5ada1cf2a3938a2a7fb02
-
Pascal Costanza authored
darcs-hash:b345f9e644f94f56dd6bd2ebf873e7c798e774fb
-
- Jul 20, 2006
-
-
Pascal Costanza authored
darcs-hash:c9861c9dd1a7637cbbaf60d630cb523012df46c3
-
- Mar 20, 2006
-
-
Pascal Costanza authored
darcs-hash:ca3929f52d4d5187e8a8f156bfd2cd2f62cb780a
-
- Mar 18, 2006
-
-
Pascal Costanza authored
This is achieved by the :reinitialize option for a slot, like this: (defclass some-class () ((some-slot :initform 'foo :reinitialize t)) (:metaclass singleton-class)) (deflayer some-layer () ((some-slot :initform 'bar :reinitialize t))) The default value for the :reinitialize option is nil. If it is nil, then the slot will only be initialized when the class/layer is initialized. When the class/layer already exists before the new defclass/deflayer form is processed, the slot keeps its old value, as is the case for slots with :allocation :class in plain CLOS. If the :reinitialize option is true, however, then the respective slot will always be re/initialized with the value given with the :initform, no matter what. If no :initform is given, the slot is made unbound, again no matter what. In other words, a slot with :reinitialize nil behaves similar to a defvar form while a slot with :reinitialize t behaves similar to a defparameter form. Currently, CMUCL and MCL have a bug wrt reinitialization of slots with :allocation :class, which leads to subsequent bug in ContextL. This has the consequence that special slots (with the option :special set to true) in singleton classes, in layers and in special classes for slots with :allocation :class do not work correctly anymore when the respective class/layer is reinitialized. As soon as the bugs in CMUCL and MCL are fixed, I can also fix the related bug in ContextL. darcs-hash:b2fb89374af06a505cd2aa36964ae632b9ab3520
-
- Mar 10, 2006
-
-
Pascal Costanza authored
darcs-hash:0891082001cd5864ab7138351c3c985164642534
-
Pascal Costanza authored
darcs-hash:b56be71219d3c3c8aa9ef3e2527c984af939d09a
-