Problems with FUNCALLABLE-STANDARD-CLASS
Hello,
I'm trying to create a new FUNCALLABLE-STANDARD-CLASS and always get
an error if I do so. I've reduced it to the following examples.
The following works:
(defclass mixin-without-slots () ())
(defclass my-funcallable-instance (mixin-without-slots
clos:funcallable-standard-object)
()
(:metaclass clos:funcallable-standard-class))
(let ((fn (make-instance 'my-funcallable-instance)))
(set-funcallable-instance-funcation fn (lambda (a b) (+ a b)))
(funcall fn 2 3))
But the following raises a condition when defining the class.
(defclass mixin-with-slot () (a))
(defclass my-buggy-funcallable-instance (mixin-with-slot
clos:funcallable-standard-object)
()
(:metaclass clos:funcallable-standard-class))
Error: #<STANDARD-CLASS MIXIN-WITH-SLOT 22DEAEFB> is an invalid
superclass of #<FUNCALLABLE-STANDARD-CLASS MY-BUGGY-FUNCALLABLE-
INSTANCE 22E291A7>.
Does anybody know this?
Is there something wrong with this code?
ciao,
Jochen
--
Jochen Schmidt
CRISPYLOGICS
Uhlandstr. 9 , 90408 Nuremberg
Fon +49 (0)911 517 999 82
Fax +49 (0)911 517 999 83
mailto:info@crispylogics.com
http://www.crispylogics.com