[slime-devel] Allegro and *CL-DEFAULT-SPECIAL-BINDINGS*
Gábor Melis
mega at retes.hu
Sat Dec 3 02:57:06 UTC 2011
In AllegroCl 8.2, *CL-DEFAULT-SPECIAL-BINDINGS* only affects the REPLs
(contradicting the documentation).
In 9.0 alpha, *CL-DEFAULT-SPECIAL-BINDINGS* is [soon to be] deprecated,
warns when first used. It's otherwise the same
EXCL:*REQUIRED-TOP-LEVEL-BINDINGS* (i.e. no change in behavior).
The patch below makes slime actually install bindings into all future
threads.
Index: swank-allegro.lisp
===================================================================
RCS file: /project/slime/cvsroot/slime/swank-allegro.lisp,v
retrieving revision 1.148
diff -u -p -r1.148 swank-allegro.lisp
--- swank-allegro.lisp 27 Nov 2011 21:47:15 -0000 1.148
+++ swank-allegro.lisp 3 Dec 2011 02:48:16 -0000
@@ -832,8 +832,11 @@
#'mp:gate-open-p (mailbox.gate mbox)))))
(defimplementation set-default-initial-binding (var form)
- (setq excl:*cl-default-special-bindings*
- (acons var form excl:*cl-default-special-bindings*)))
+ (push (cons var form)
+ #+(version>= 9 0)
+ excl:*required-thread-bindings*
+ #-(version>= 9 0)
+ excl::required-thread-bindings))
(defimplementation quit-lisp ()
(excl:exit 0 :quiet t))
Cheers,
Gabor
More information about the slime-devel
mailing list