[slime-devel] slime.el requires arc-mode

Line 4603 in slime.el contains the following form: ,---- | ((:zip file entry) | (require 'arc-mode) | (set-buffer (find-file-noselect file t)) | (goto-char (point-min)) | (re-search-forward (concat " " entry "$")) | (let ((buffer (save-window-excursion | (archive-extract) | (current-buffer)))) | (set-buffer buffer) | (goto-char (point-min)))) `---- Note that it requires arc-mode. I don't have arc-mode, so slime.el won't load in XEmacs. Is this a new prerequisite for running SLIME? -- Steven E. Harris

"Steven E. Harris" <seh@panix.com> writes:
Line 4603 in slime.el contains the following form:
,---- | ((:zip file entry) | (require 'arc-mode) | (set-buffer (find-file-noselect file t)) | (goto-char (point-min)) | (re-search-forward (concat " " entry "$")) | (let ((buffer (save-window-excursion | (archive-extract) | (current-buffer)))) | (set-buffer buffer) | (goto-char (point-min)))) `----
Note that it requires arc-mode. I don't have arc-mode, so slime.el won't load in XEmacs.
Are you sure that the `(require 'arc-mode)' is executed at load time? -T.

"Tobias C. Rittweiler" <tcr@freebits.de> writes:
Are you sure that the `(require 'arc-mode)' is executed at load time?
Yes, insofar as `load-library' and `load-file' trigger the `eval-when-compile' form. If I run M-x load-library slime or M-x load-file slime.el the file fails to load. It looks like it's the `eval-when-compile' form at line 67 that fails: ,---- | Debugger entered--Lisp error: (error "Required feature arc-mode was not provided") | require(arc-mode) | (progn (require (quote arc-mode)) (require (quote apropos)) (require (quote outline)) (require (quote etags))) | (eval-when-compile (require (quote arc-mode)) (require (quote apropos)) (require (quote outline)) (require (quote etags))) | load-internal("slime" nil nil nil undecided) | load("slime") | load-library("slime") | eval((load-library "slime")) | edit-and-eval-command("Redo: " (toggle-debug-on-error nil) (command-history . 1)) | repeat-complex-command(1) | call-interactively(repeat-complex-command) `---- Naturally, trying to byte-compile the file fails similarly. If I comment out the `(require 'arc-mode)' form on line 68, I can compile and load the file without error. -- Steven E. Harris

* Steven E. Harris [2008-10-26 19:52+0100] writes:
the file fails to load. It looks like it's the `eval-when-compile' form at line 67 that fails:
Yes, you are right. I didn't read the documentation and just assumed that eval-when-compile would only be executed during compilation but it's actually also executed when interpreted. I changed it do (eval-when (compile) ...) which works also in XEmacs. Byte-compilation doesn't work in XEmacs, though. Helmut.

Helmut Eller <heller@common-lisp.net> writes:
I changed it do (eval-when (compile) ...) which works also in XEmacs.
Thank you. I just updated the file with your changes and it does load without error now in XEmacs.
Byte-compilation doesn't work in XEmacs, though.
In general, or as a result of this change? Before my last post, I was able to byte-compile slime.el when I commented out the `require' form, but I concede that I didn't test the result. -- Steven E. Harris

* Steven E. Harris [2008-10-27 00:21+0100] writes:
Byte-compilation doesn't work in XEmacs, though.
In general, or as a result of this change? Before my last post, I was able to byte-compile slime.el when I commented out the `require' form, but I concede that I didn't test the result.
It doesn't work because arc-mode.el in XEmacs provides 'archive-mode instead of 'arc-mode. Helmut.
participants (3)
-
Helmut Eller
-
Steven E. Harris
-
Tobias C. Rittweiler