- 02 Nov, 2009 2 commits
-
-
Pascal Costanza authored
Ignore-this: a3f13929e97d722e37d5957ab42fea5e darcs-hash:9e5bffe3829ad3346efafd0babf4151166696f3c
-
Pascal Costanza authored
Added improved generic function invocation protocol to Clozure Common Lisp, clisp, LispWorks and SBCL. Ignore-this: aaafeefe5dadb70690dcfccd53bc8e2f darcs-hash:5b84b767f94420808fd46a3579a1850054de3549
-
- 06 Nov, 2008 1 commit
-
-
Pascal Costanza authored
Some CLOS implementations have problems with determining subtype relationships between classes in certain corner cases. For example, clisp doesn't like to determine such relationships for forward referenced classes, and some instances of PCL have problems with anonymous classes under certain circumstances (primarily when doing CLOS MOP programming). Apparently, subtypep is typically implemented based on the class precedence list, which can only be determined until after a class has been finalized, and this seems to be one of the reasons for these problems. However, the CLOS MOP places restrictions on methods for compute-class-precedence-list such that the subtype relationship actually does _not_ depend on the precedence list, but can be based on a membership test in the unordered set of all direct and indirect superclasses. I have provided subclassp in Closer to MOP as a utility function that does just that: It walks the superclass hierarchy to determine whether one class is a subclass of another. This implementation is not that efficient, so it should only be used when subtypep fails. (It could probably be made more efficient, but since this is only provided as a replacement for subtypep in hopefully rare corner cases, I haven't put the energy into this to do this yet.) darcs-hash:1577003438ad08385a1e4f7cf24254fce79ea359
-
- 23 Feb, 2008 1 commit
-
-
Pascal Costanza authored
darcs-hash:dd13c0b3e46b923c29775aa74ed6e1e79933c4f2
-
- 28 Dec, 2006 1 commit
-
-
Pascal Costanza authored
darcs-hash:163cba8d0d6e4c7548bcac17463887b52d482b11
-
- 27 Dec, 2006 1 commit
-
-
Pascal Costanza authored
darcs-hash:9eee2aa05227bdf4f4eeaf45e58c845a4707ffff
-
- 30 Nov, 2006 1 commit
-
-
Pascal Costanza authored
The programmatic version of ensure-method in SBCL has problems again. Therefore, it is replaced with a version that evaluates a defmethod form for the time being. darcs-hash:3120d1936aca4182a1f8fd2e9076e84e1404d7d5
-
- 26 Aug, 2006 1 commit
-
-
Pascal Costanza authored
SBCL 0.9.16 now passes all MOP Feature Tests. This makes several changes necessary in the Closer to MOP support for SBCL, again. Therefore, support for SBCL 0.9.15 is dropped. The darcs repository has been tagged with '0.33' in case you need a version that works with SBCL 0.9.15. darcs-hash:4bfdc272ae29918f08b54d0bdc14fed29b443814
-
- 29 Jul, 2006 4 commits
-
-
Pascal Costanza authored
SBCL now supports class metaobjects in specializers in defmethod forms, so we don't have to replace them with their names. darcs-hash:615006dc944f3c9c6e15b57467e597f67a40ad77
-
Pascal Costanza authored
darcs-hash:62cbac84437b668d5c7b4222d3ffcd9b743a2067
-
Pascal Costanza authored
darcs-hash:c4c1848e22a3d8293090441fd1a1b39670067107
-
Pascal Costanza authored
SBCL 0.9.15 now correctly supports typep and subtypep for class metaobjects, so Closer to MOP's versions thereof are not needed anymore. darcs-hash:dbcf08303fe3f2e8ad195382c90e88cb5fa0fda7
-
- 20 Jul, 2006 1 commit
-
-
Pascal Costanza authored
A pretty common idiom is this: (unless (class-finalized-p class) (finalize-inheritance class)) class This is captured in the new utility function ensure-finalized. darcs-hash:7d147f9c086e13bd2b83e670953ac124ec7dcb27
-
- 01 Feb, 2006 1 commit
-
-
Pascal Costanza authored
The function documentation now returns the documentation strings for effective slot definition metaobjects in CMUCL. darcs-hash:825ddee7bae9c308010ec376b13fe5d4038687d5
-
- 27 Jan, 2006 2 commits
-
-
Pascal Costanza authored
darcs-hash:a6d51c1d634b093f9403635cb3ec6230bba703b1
-
Pascal Costanza authored
In CMUCL and SBCL, ensure-method was implemented as proposed in AMOP. However in some cases, this seems to lead to problems with method combination. For the time being, I have replaced the implementation by using a generated defmethod form instead, like in some of the other CL implementations. (In SBCL, this isn't as straightforward because SBCL doesn't accept class metaobjects as specializers.) darcs-hash:a9161a505f3d6fc1376d2e9d065da70c59ec99e2
-
- 30 Nov, 2005 1 commit
-
-
Pascal Costanza authored
darcs-hash:d3d97662bf9052129efdf34c4af8cb75d437eb27
-
- 17 Nov, 2005 1 commit
-
-
Pascal Costanza authored
CMUCL 19c now supports the dependent protocol correctly, so the corresponding fixes could be removed. darcs-hash:5469d4a6ff03e37238daa28708a8727f2f88fdd9
-
- 29 Oct, 2005 1 commit
-
-
Pascal Costanza authored
darcs-hash:b4be9c6147a26c1e9767e9951f49aee2c898655b
-
- 10 Sep, 2005 1 commit
-
-
Pascal Costanza authored
darcs-hash:87b02abfabbf534e03e82a45a96521a1d7c7a3b2
-
- 16 Aug, 2005 1 commit
-
-
Pascal Costanza authored
The correction of lists of direct superclasses was done at the wrong place (in :around methods on initialize-instance and reinitialize-instance). The MOP specification doesn't allow to define primary methods for initialize-instance and reinitialize-instance, but these are the only places where those lists can be corrected in a reasonable way. This affects LispWorks and MCL. Further changes: - The typep implementation for MCL was incorrect. - reinitialize-instance for standard-class could be simplified. - reinitialize-instance for standard-generic-function could be simplified. darcs-hash:c8e542ff6d11161f8c50c8595710590711c6732b
-
- 02 Aug, 2005 1 commit
-
-
Pascal Costanza authored
darcs-hash:e268d42f1d0bfb9c7ef64135393a2f63b243ed54
-