[GBBopen-developer] SWANK cannot load when using initiate.lisp

Chun Tian (binghe) binghe.lisp at gmail.com
Thu Apr 17 12:09:09 EDT 2008


Hi,

I... I just think *AFTER-INIT-HOOK* is a internal symbol. With  
following changes, everything seems OK:

Index: extended-repl.lisp
===================================================================
--- extended-repl.lisp	(revision 358)
+++ extended-repl.lisp	(working copy)
@@ -262,10 +262,10 @@
    (format t "~&;; Loading extended REPL command processing for  
SLIME...~%")
    (load *slime-extended-repl-file*))

-(defvar swank-backend:*after-init-hook* nil
+(defvar swank-backend::*after-init-hook* nil
    "Hook run after user init files are loaded.")

-(pushnew 'load-slime-extended-repl swank-backend:*after-init-hook*)
+(pushnew 'load-slime-extended-repl swank-backend::*after-init-hook*)

  ;;;  
= 
= 
= 
========================================================================
  ;;;				  End of File

I was wrong to say *AFTER-INIT-HOOK* doesn't exist in SWANK-BACKEND  
package, sorry.

>
>> After your recent commit, there's a error when load initiate.lisp   
>> because of following changes:
>> +(defvar swank-backend:*after-init-hook* nil
>> +  "Hook run after user init files are loaded.")
>> and
>> -(defpackage :swank
>> -  (:use :common-lisp))
>> +(unless (find-package ':swank-backend)
>> +  (defpackage :swank-backend
>> +    (:use :common-lisp)
>> +    (:export #:*after-init-hook*)))
>> It seems that *AFTER-INIT-HOOK* doesn't exist in SWANK-BACKEND  
>> package  (at least yesterday's SLIME trunk).
>
> It does exist in the latest SLIME CVS checkout:
>
> $ grep init-hook *.lisp
> swank-loader.lisp:  (eval `(pushnew 'compile-contribs
>                       ,(q"swank::*after-init-hook*")))
> swank.lisp:(defvar *after-init-hook* '()
> swank.lisp:(add-hook *after-init-hook* 'init-global-stream- 
> redirection)
> swank.lisp:  (run-hook *after-init-hook*))
>
> We checked the latest commit for SLIME support on several CLs (but  
> unfortunately, not on the latest Clozure CL).
>
> The problem is that Clozure CL isn't reloading the latest SLIME, due  
> to the existence of the SLIME packages (even without any of the  
> GBBopen stuff). Trying manually:
>
> $ ccl -n
> Welcome to Clozure Common Lisp Version 1.1-r9172MS (DarwinX8664)!
> ? (load "swank-loader.lisp")
> #P"/usr/local/slime/swank-loader.lisp"
> ? (swank-loader::init)
> ; Warning: Not reloading SWANK.  Package already exists.
> ; While executing: SWANK-LOADER:INIT, in process listener(1).
> > Error: Unbound variable: SWANK::*AFTER-INIT-HOOK*
> > While executing: CCL::CHEAP-EVAL-IN-ENVIRONMENT, in process  
> listener(1).
> > Type :GO to continue, :POP to abort, :R for a list of available  
> restarts.
> > If continued: Retry getting the value of SWANK::*AFTER-INIT-HOOK*.
> > Type :? for other options.
> 1>
>
> Note that SLIME can be reloaded via:
>
> $ ccl -n
> Welcome to Clozure Common Lisp Version 1.1-r9172MS (DarwinX8664)!
> ? (load "swank-loader.lisp")
> #P"/usr/local/slime/swank-loader.lisp"
> ? (swank-loader:init :reload t)
> ;Compiling "/usr/local/slime/swank-backend.lisp"...
>    ...
>
> But the latest swank-loader.lisp has to be loaded first in order to  
> accomplish reloading.
>
> So, we need to do more investigating on how to get SLIME on Clozure  
> CL to be running with the latest SLIME checkout.  Any Clozure with  
> SLIME experts are welcomed to chime in...
>
>


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



More information about the GBBopen-developer mailing list