From: Christophe Rhodes Date: Thu, 12 Dec 2013 14:53:33 +0000 (+0000) Subject: note a fixme X-Git-Tag: els2014-submission~30 X-Git-Url: http://christophe.rhodes.io/gitweb/?a=commitdiff_plain;h=0ffa1258a3f10cf28cbe1751ef92431aa54521c0;p=specializable.git note a fixme --- diff --git a/specializable.lisp b/specializable.lisp index 6fabb24..29ad926 100644 --- a/specializable.lisp +++ b/specializable.lisp @@ -51,6 +51,12 @@ ;;; gf ;;; args)))) +;;; FIXME: this (and add/remove-direct-method) don't actually work +;;; together, because two distinct calls to make-extended-specializer +;;; return two distinct specializer objects. We need either to make +;;; the extended specializers be interned, or to have them be +;;; arbitrarily ephemeral but adjust specializer-direct-methods (and +;;; implement specializer-direct-generic-functions) accordingly. (defun make-extended-specializer (sname) (destructuring-bind (kind &rest args) sname (apply (or (get kind 'extended-specializer-parser)