[slime-devel] Re: Error in function CREATE-INET-LISTENER (OS X +CMUCL) (Solved)
mikel
mikel at evins.net
Mon Sep 13 14:39:28 UTC 2004
mikel wrote:
> Matthew Munz wrote:
>
>> Mikel,
>>
>> That fixed it. Thanks. Thank you Lars, also.
>> I have no idea why this edit to swank-cmucl.lisp works, but I'd like
>> to suggest that some mention of it appear in the documentation/FAQ so
>> that other mac users can get in on the fun.
>>
>> Thanks again.
>
>
> Well, just to further complicate matters, this fix no longer appears to
> work with the (just posted) 19a binaries for darwin; there is some other
> brand new breakage that I have not yet figured out how to work around.
So the problem appears to be that swank.lisp refers to
swank-mop:standard-slot-definition, which is not defined anywhere in the
cmucl load. I fixed this by swiping the definition of
import-to-swank-mop from swank-sbcl and using it to import
standard-slot-definition from the pcl package:
(eval-when (:compile-toplevel :load-toplevel :execute)
(defun import-to-swank-mop (sym/sym-list)
(if (listp sym/sym-list)
(dolist (sym sym/sym-list)
(import-to-swank-mop sym))
(let* ((sym sym/sym-list)
(swank-mop-sym (find-symbol (symbol-name sym) :swank-mop)))
;; 1) "delete" the symbol form the :swank-mop package
(when swank-mop-sym
(unintern swank-mop-sym :swank-mop))
(import sym :swank-mop)
(export sym :swank-mop))))
(import-to-swank-mop
'( pcl:standard-slot-definition)))
After I add this chunk of code to the top of swank-cmucl.lisp, the
latest (19a) build of CMUCL seems to work properly with SLIME.
It still seems to be necessart to comment out the
:host (resolve-hostname host)
argument to create-socket. Presumably there is a proper way to solve
this one with an adjustment to OSX's name resolution.
More information about the slime-devel
mailing list