Luis,
Can you think of any reasons why this would be a bad idea? (modulo the annoying STYLE-WARNINGs from SBCL about method redefinition I guess...)
I added some type translators to the new examples I'm working on and got bitten by the fact that DEFINE-TYPE-TRANSLATOR doesn't make the translator available until load time. I think it's best for it to expand into an EVAL-WHEN like DEFCFUN, DEFCTYPE, etc, unless there's some problem I'm not thinking of:
--- old-cffi/src/types.lisp 2005-12-23 03:04:40.000000000 -0800 +++ new-cffi/src/types.lisp 2005-12-23 05:47:58.000000000 -0800 @@ -685,7 +685,7 @@ (:to-c-dynamic (values 'to-c-dynamic-form nil))) (let ((type-spec `(,(gensym "TYPE") (eql ',type))) (args (delete nil (list value-arg var-arg body-arg)))) - `(progn + `(eval-when (:compile-toplevel :load-toplevel :execute) (defmethod ,form-method (,type-spec ,@args) ,@body) ,(when translate-method ; no method for to-c-dynamic
James