I'm not sure how the whole SLIME development cycle is suppose to work. One of the things that is confusing me is that selecting various options in SLDB causes the REPL to lose its connection with the inferior lisp, requiring me to do 'M-x slime' to reconnect. Here is an example:
;; starting slime for the first time in this emacs session
M-x slime ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; messages Connecting to Swank on port 2369.. Process bridge is installed Connected. Hack and be merry!
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; repl buffer shows
; SLIME 2006-01-20 CL-USER> x
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; sldb clisp/0 buffer appears
EVAL: variable X has no value [Condition of type SYSTEM::SIMPLE-UNBOUND-VARIABLE]
Restarts: 0: [USE-VALUE] You may input a value to be used instead of X. 1: [STORE-VALUE] You may input a new value for X. 2: [ABORT-REQUEST] Abort handling SLIME request. 3: [ABORT] ABORT
Backtrace: 0: #<SYSTEM-FUNCTION EVAL> 1: #<COMPILED-FUNCTION SWANK::EVAL-REGION> 2: #<COMPILED-FUNCTION SWANK::LISTENER-EVAL-1> 3: #<COMPILED-FUNCTION #:|273 275 (DEFINTERFACE CALL-WITH-SYNTAX-HOOKS (FN) ...)-31-3-1-1|> 4: #<COMPILED-FUNCTION SWANK::CALL-WITH-BUFFER-SYNTAX> 5: #<COMPILED-FUNCTION SWANK:LISTENER-EVAL> 6: #<SYSTEM-FUNCTION EVAL> 7: #<COMPILED-FUNCTION SWANK::EVAL-FOR-EMACS-1> 8: #<COMPILED-FUNCTION #:|472 477 (DEFINTERFACE CALL-WITH-DEBUGGER-HOOK (HOOK FUN) ...)-52-3-1-1|> 9: #<COMPILED-FUNCTION SWANK::EVAL-FOR-EMACS> 10: #<COMPILED-FUNCTION SWANK::READ-FROM-EMACS> 11: #<COMPILED-FUNCTION SWANK::HANDLE-REQUEST-1> 12: #<COMPILED-FUNCTION #:|472 477 (DEFINTERFACE CALL-WITH-DEBUGGER-HOOK (HOOK FUN) ...)-52-3-1-1|> 13: #<COMPILED-FUNCTION SWANK::CALL-WITH-CONNECTION-1> 14: #<COMPILED-FUNCTION SWANK::CALL-WITH-REDIRECTED-IO> 15: #<COMPILED-FUNCTION SWANK::MAYBE-CALL-WITH-IO-REDIRECTION> 16: #<COMPILED-FUNCTION SWANK::CALL-WITH-CONNECTION> 17: #<COMPILED-FUNCTION SWANK::HANDLE-REQUEST> 18: #<COMPILED-FUNCTION SWANK::SIMPLE-SERVE-REQUESTS-2> 19: #<COMPILED-FUNCTION SWANK::SIMPLE-SERVE-REQUESTS> 20: #<COMPILED-FUNCTION SWANK::SERVE-REQUESTS> 21: #<COMPILED-FUNCTION SWANK::SERVE-CONNECTION> 22: #<COMPILED-FUNCTION SWANK::SETUP-SERVER-SERVE> 23: #<COMPILED-FUNCTION SWANK::SETUP-SERVER> 24: #<COMPILED-FUNCTION SWANK:START-SERVER> 25: #<SYSTEM-FUNCTION SYSTEM::READ-EVAL-PRINT> 2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; type '3' (abort) into the sldb buffer ;; the following minibuffer message appears:
Lisp connection closed unexpectedly: exited abnormally with code 256
;; type 'enter' in repl buf and I see:
if: Not connected. Use `M-x slime' to start a Lisp.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Starting slime again with M-x slime works fine but takes a long ;; time.
It seems a lot of actions cause the lisp connection to close unexpectedly. Is this normal? Should I just ignore it and restart slime?
Restarting slime after each "mistake" (I make a lot of them) is rather tedious.
FYI: I'm using clisp from cygwin:
GNU CLISP 2.35 (2005-08-29) (built on winsteingoldlap.ad.alphatech.com [10.41.52.182]) Software: GNU C 3.4.4 (cygming special) (gdc 0.12, using dmd 0.125) gcc -W -Wswitch -Wcomment -Wpointer-arith -Wimplicit -Wreturn-type -Wmissing-declarations -Wno-sign-compare -O2 -fexpensive-optimizations -DUNICODE -DDYNAMIC_FFI -I. -x none -lintl libcharset.a libavcall.a libcallback.a -lreadline -lncurses -liconv -L/usr/local/libsigsegv-cygwin/lib -lsigsegv -L/usr/X11R6/lib -lX11 SAFETY=0 HEAPCODES STANDARD_HEAPCODES SPVW_PAGES SPVW_MIXED libsigsegv 2.2 libiconv 1.9 Features: (REGEXP SYSCALLS I18N LOOP COMPILER CLOS MOP CLISP ANSI-CL COMMON-LISP LISP=CL INTERPRETER SOCKETS GENERIC-STREAMS LOGICAL-PATHNAMES SCREEN FFI GETTEXT UNICODE BASE-CHAR=CHARACTER PC386 UNIX CYGWIN) C Modules: (clisp i18n syscalls regexp) Installation directory: /usr/lib/clisp/ User language: ENGLISH Machine: I686 (I686) jcano-lt.jnpr.net [192.168.1.103]
and
GNU Emacs 21.3.1 (i386-mingw-nt5.1.2600) of 2004-03-10 on NYAUMO
SLIME, as you can see is the CVS head I checked out 2006-01-20.
Thanks in advance, --jfc
On Sun, 2006-01-22 at 23:01 -0800, funkyj@gmail.com wrote:
Restarts: 0: [USE-VALUE] You may input a value to be used instead of X. 1: [STORE-VALUE] You may input a new value for X. 2: [ABORT-REQUEST] Abort handling SLIME request. 3: [ABORT] ABORT
Restart 3 was added in 2.36 or something to return to CLISP's REPL. Use SLIME's ABORT-REQUEST restart, or even just `q', so you don't have to look at the list and pick the right number.
In addition to the reply above I also got some responses via email.
Thanks folks! SLIME is pretty cool!
--jfc