Commit 87015493 authored by Pascal Costanza's avatar Pascal Costanza
Browse files

Feature enhancements for LispWorks 5.1.x, dropped mentions of 5.0.x.

Ignore-this: b4ebbee81032062545de7542b12b3c54

darcs-hash:22cff2ef02719f4f46c455a975ed004b6e2ba836
parent e87bfc95
......@@ -225,62 +225,12 @@
(:validate-superclass)
(:writer-method-class fixed))
:lispworks5.0-5.0.2
((:add-method-calls-compute-discriminating-function)
(:add-method-updates-specializer-direct-generic-functions fixed)
(:class-default-initargs)
(:class-direct-default-initargs)
(:compute-applicable-methods-using-classes)
(:compute-default-initargs)
(:defgeneric-calls-find-method-combination)
(:eql-specializer) ; partially fixed
(:eql-specializer-object fixed)
(:eql-specializers-are-objects)
(:extensible-allocation)
(:finalize-inheritance-calls-compute-default-initargs)
(:find-method-combination fixed) ; partially
(:funcallable-standard-instance-access)
(:function-invocation-calls-compute-applicable-methods)
(:function-invocation-calls-compute-applicable-methods-using-classes)
(:initialize-instance-calls-compute-discriminating-function)
(:intern-eql-specializer fixed) ; partially
(:make-method-lambda fixed) ; partially
(:method-functions-take-processed-parameters)
(:reinitialize-instance-calls-compute-discriminating-function)
(:remove-method-calls-compute-discriminating-function)
(:setf-slot-value-using-class-specialized-on-slot-definition fixed)
(:slot-boundp-using-class-specialized-on-slot-definition fixed)
(:slot-makunbound-using-class-specialized-on-slot-definition fixed)
(:slot-reader-calls-slot-value-using-class fixed)
(:slot-value-using-class-specialized-on-slot-definition fixed)
(:slot-writer-calls-slot-value-using-class fixed)
(:specializer)
(:specializer-direct-generic-functions fixed)
(:standard-class-and-funcallable-standard-class-are-compatible)
(:standard-instance-access)
(:subclasses-of-built-in-class-do-not-inherit-exported-slots fixed)
(:subclasses-of-class-do-not-inherit-exported-slots fixed)
(:subclasses-of-direct-slot-definition-do-not-inherit-exported-slots)
(:subclasses-of-effective-slot-definition-do-not-inherit-exported-slots)
(:subclasses-of-forward-referenced-class-do-not-inherit-exported-slots fixed)
(:subclasses-of-funcallable-standard-class-do-not-inherit-exported-slots fixed)
(:subclasses-of-slot-definition-do-not-inherit-exported-slots)
(:subclasses-of-standard-accessor-method-do-not-inherit-exported-slots)
(:subclasses-of-standard-class-do-not-inherit-exported-slots fixed)
(:subclasses-of-standard-direct-slot-definition-do-not-inherit-exported-slots)
(:subclasses-of-standard-effective-slot-definition-do-not-inherit-exported-slots)
(:subclasses-of-standard-generic-function-do-not-inherit-exported-slots)
(:subclasses-of-standard-method-do-not-inherit-exported-slots)
(:subclasses-of-standard-reader-method-do-not-inherit-exported-slots)
(:subclasses-of-standard-slot-definition-do-not-inherit-exported-slots)
(:subclasses-of-standard-writer-method-do-not-inherit-exported-slots))
:lispworks5.1-5.1.2
((:add-method-calls-compute-discriminating-function)
(:add-method-updates-specializer-direct-generic-functions fixed)
(:class-default-initargs)
(:class-direct-default-initargs)
(:compute-applicable-methods-using-classes)
(:compute-applicable-methods-using-classes fixed)
(:compute-default-initargs)
(:defgeneric-calls-find-method-combination)
(:eql-specializer) ; partially fixed
......@@ -288,13 +238,13 @@
(:eql-specializers-are-objects)
(:finalize-inheritance-calls-compute-default-initargs)
(:find-method-combination fixed) ; partially
(:funcallable-standard-instance-access)
(:function-invocation-calls-compute-applicable-methods)
(:function-invocation-calls-compute-applicable-methods-using-classes)
(:funcallable-standard-instance-access fixed)
(:function-invocation-calls-compute-applicable-methods fixed)
(:function-invocation-calls-compute-applicable-methods-using-classes fixed)
(:initialize-instance-calls-compute-discriminating-function)
(:intern-eql-specializer fixed) ; partially
(:make-method-lambda fixed) ; partially
(:method-functions-take-processed-parameters)
(:make-method-lambda fixed)
(:method-functions-take-processed-parameters fixed)
(:reinitialize-instance-calls-compute-discriminating-function)
(:remove-method-calls-compute-discriminating-function)
(:setf-slot-value-using-class-specialized-on-slot-definition fixed)
......@@ -306,7 +256,7 @@
(:specializer)
(:specializer-direct-generic-functions fixed)
(:standard-class-and-funcallable-standard-class-are-compatible)
(:standard-instance-access)
(:standard-instance-access fixed)
(:subclasses-of-built-in-class-do-not-inherit-exported-slots fixed)
(:subclasses-of-class-do-not-inherit-exported-slots fixed)
(:subclasses-of-direct-slot-definition-do-not-inherit-exported-slots)
......
......@@ -61,20 +61,20 @@ CMUCL 20a
- STANDARD-CLASS and FUNCALLABLE-STANDARD-CLASS are not compatible. Not fixed.
- Subclasses of BUILT-IN-CLASS, CLASS, DIRECT-SLOT-DEFINITION, EFFECTIVE-SLOT-DEFINITION, EQL-SPECIALIZER, FORWARD-REFERENCED-CLASS, FUNCALLABLE-STANDARD-CLASS, SLOT-DEFINITION, SPECIALIZER, STANDARD-ACCESSOR-METHOD, STANDARD-CLASS, STANDARD-DIRECT-SLOT-DEFINITION, STANDARD-EFFECTIVE-SLOT-DEFINITION, STANDARD-GENERIC-FUNCTION, STANDARD-METHOD, STANDARD-READER-METHOD, STANDARD-SLOT-DEFINITION and STANDARD-WRITER-METHOD will inherit slots whose names are exported symbols and/or accessible in the package common-lisp-user. Not fixed.
LispWorks, 5.0 - 5.0.2, 5.1, 5.1.2 Personal & Professional Edition
LispWorks, 5.1.2 Personal & Professional Edition
- CLASS-DIRECT-DEFAULT-INITARGS and CLASS-DEFAULT-INITARGS don't return canonicalized default initargs as specified. Not fixed.
- ADD-METHOD, REMOVE-METHOD, INITIALIZE-INSTANCE and REINITIALIZE-INSTANCE do not determine a new discriminating function. This is postponed until function invocation instead, so shouldn't be a problem in practice.
- COMPUTE-APPLICABLE-METHODS-USING-CLASSES doesn't exist. Not fixed.
- COMPUTE-APPLICABLE-METHODS-USING-CLASSES doesn't exist. Fixed.
- COMPUTE-DEFAULT-INITARGS doesn't exist. Not fixed.
- DEFGENERIC does not call FIND-METHOD-COMBINATION. Not fixed.
- EQL-SPECIALIZER, EQL-SPECIALIZER-OBJECT and INTERN-EQL-SPECIALIZER don't exist. In LispWorks, eql specializers are lists not objects. I have provided EQL-SPECIALIZER as a type (not as a class) and EQL-SPECIALIZER-OBJECT and INTERN-EQL-SPECIALIZER to work on lists, and a class EQL-SPECIALIZER* and corresponding EQL-SPECIALIZER-OBJECT* and INTERN-EQL-SPECILAIZER* to soften the incompatibilities.
- Before LispWorks 5.1, the :ALLOCATION type cannot be extended. Not fixed.
- FIND-METHOD-COMBINATION doesn't exist. Fixed, but fixed version doesn't work with method combination options.
- FUNCALLABLE-STANDARD-INSTANCE-ACCESS and STANDARD-INSTANCE-ACCESS don't exist. Not fixed.
- The function invocation protocol doesn't call COMPUTE-APPLICABLE-METHODS and COMPUTE-APPLICABLE-METHODS-USING-CLASSES. Not fixed.
- FUNCALLABLE-STANDARD-INSTANCE-ACCESS and STANDARD-INSTANCE-ACCESS don't exist. Fixed.
- The function invocation protocol doesn't call COMPUTE-APPLICABLE-METHODS and COMPUTE-APPLICABLE-METHODS-USING-CLASSES. Fixed.
- MAKE-METHOD-LAMBDA expects other parameters than specified. Fixed.
- Method functions don't take parameters as specified in AMOP, but instead just the parameters that the generic function receives. Not fixed.
- Method functions don't take parameters as specified in AMOP, but instead just the parameters that the generic function receives. Fixed.
- The slot methods (SLOT-VALUE-USING-CLASS, etc.) are not specialized on effective slot definitions, but on slot names. Fixed.
- The generated accessor methods don't use the slot methods for accessing slots. Fixed. (Don't use :optimize-slot-access to deoptimize slot access, or otherwise the fixed slot access protocol doesn't work anymore!)
- SPECIALIZER doesn't exist. Not fixed.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment