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
* Gábor Melis [2011-12-03 02:57] writes:
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.
Committed.
Helmut