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

Removed support for Allegro 8.1.

Ignore-this: 26d66183097526e96015d3cd0f290101

darcs-hash:934c9fdf36dbf1a555b190dfc9e0af5618634a6b
parent 489f3b66
:allegro8.1
((:class-default-initargs)
(:class-direct-default-initargs)
(:compute-default-initargs) ; -> :compute-default-initargs-allegro
(:default-superclass-for-funcallable-standard-class-is-funcallable-standard-object)
(:defgeneric-calls-find-method-combination)
(:defmethod-calls-make-method-lambda fixed)
(:dependent-protocol-for-generic-functions fixed)
(:extensible-allocation fixed)
(:function-invocation-calls-compute-applicable-methods fixed)
(:function-invocation-calls-compute-applicable-methods-using-classes fixed)
(:function-invocation-calls-compute-effective-method fixed)
(:generic-function-argument-precedence-order-returns-required-arguments fixed)
(:make-method-lambda fixed)
(:method-functions-take-processed-parameters fixed)
(:method-lambdas-are-processed fixed)
(:reinitialize-instance-calls-compute-discriminating-function fixed)
(:setf-class-name-calls-reinitialize-instance)
(:setf-generic-function-name-calls-reinitialize-instance)
(:slot-makunbound-using-class-specialized-on-slot-definition fixed)
(:standard-class-and-funcallable-standard-class-are-compatible)
(:subclasses-of-built-in-class-do-not-inherit-exported-slots)
(:subclasses-of-forward-referenced-class-do-not-inherit-exported-slots)
(:subclasses-of-funcallable-standard-class-do-not-inherit-exported-slots)
(:subclasses-of-method-combination-do-not-inherit-exported-slots)
(:subclasses-of-standard-accessor-method-do-not-inherit-exported-slots)
(:subclasses-of-standard-class-do-not-inherit-exported-slots)
(: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)
(:t-is-always-a-valid-superclass))
:allegro8.2
((:class-default-initargs)
(:class-direct-default-initargs)
......
Features that don't adhere to AMOP in various CLOS MOP implementations, and whether and how they are resolved in Closer to MOP.
Allegro Common Lisp 8.1
- CLASS-DIRECT-DEFAULT-INITARGS and CLASS-DEFAULT-INITARGS don't return canonicalized default initargs as specified. Not fixed.
- COMPUTE-DEFAULT-INITARGS takes more parameters than specified. Not fixed. Conditionalize on #+allegro for your own methods instead.
- FUNCALLABLE-STANDARD-OBJECT is not used as the default superclass for classes with :metaclass FUNCALLABLE-STANDARD-CLASS.
- DEFGENERIC does not call FIND-METHOD-COMBINATION. Not fixed.
- DEFMETHOD doesn't call MAKE-METHOD-LAMBDA. Fixed.
- The dependent protocol for generic functions doesn't work fully. Fixed.
- GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER doesn't return only the required arguments. Fixed.
- The function invocation protocol doesn't call COMPUTE-APPLICABLE-METHODS, COMPUTE-APPLICABLE-METHODS-USING-CLASSES and COMPUTE-EFFECTIVE-METHOD. Fixed.
- The :ALLOCATION type cannot be extended. Fixed.
- MAKE-METHOD-LAMBDA is not provided. Fixed.
- Method functions don't take parameters as specified in AMOP, but instead just the parameters that the generic function receives. Fixed.
- REINITIALIZE-INSTANCE doesn't determine a new discriminating function. Fixed.
- (SETF CLASS-NAME) and (SETF GENERIC-FUNCTION-NAME) do not use REINITIALIZE-INSTANCE for changing the names. Not fixed.
- SLOT-MAKUNBOUND-USING-CLASS is not specialized on slot definition metaobjects, but on symbols. Fixed.
- STANDARD-CLASS and FUNCALLABLE-STANDARD-CLASS are not compatible. Not fixed.
- VALIDATE-SUPERCLASS doesn't recognize T as a valid superclass. Not fixed.
- Subclasses of BUILT-IN-CLASS, FORWARD-REFERENCED-CLASS, FUNCALLABLE-STANDARD-CLASS, METHOD-COMBINATION, 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.
Allegro Common Lisp 8.2
- CLASS-DIRECT-DEFAULT-INITARGS and CLASS-DEFAULT-INITARGS don't return canonicalized default initargs as specified. Not fixed.
......@@ -187,7 +167,6 @@ SCL 1.3.9
Some extra notes:
- If you specialize COMPUTE-DEFAULT-INITAGS, conditionalize for the extra parameters in Allegro before Allegro Common Lisp 8.2.
- Don't rely on FIND-METHOD-COMBINATION to do its job correctly, only when you don't provide method combination options.
- MAKE-METHOD-LAMBDA works in Allegro, CLisp, Clozure Common Lisp, CMUCL, LispWorks and SBCL as specified (but make sure that the respective generic function and method metaobject classes and make-method-lambda definitions are part of your compilation enviroment).
- Specialize the methods for the dependent protocol on the class or generic function metaobject class. The example in AMOP doesn't do this but that is fragile code.
......
Allegro 8.1, 8.2
Allegro 8.2
CLisp 2.49
Clozure Common Lisp 1.5
CMU Common Lisp 20b
......
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