oakenshield1
oakenshield1

Reputation: 871

Slime to run right CCL

I have some PC boxes some 32 and some 64 bits. I keep a local svn repo of the CCL implementation on all of them and I have the same .bashrc and .emacs configurations on all boxes. Therefore when I like to use CCL from within Emacs through Slime I just type by prefixing M-- M-x slime and then type ccl32 and ccl64 cause I had put something like that in my .emacs configuration some time ago.

(setq slime-lisp-implementations
  `((sbcl ("/usr/bin/sbcl" "--noinform" "--no-linedit"))
    (ccl32 ("/path/to/32bit/ccl/lx86cl"))
    (ccl64 ("/path/to/64bit/ccl/lx86cl64"))
    (abcl ("java" "-jar" "/usr/local/share/java/abcl-bin-1.3.3/abcl.jar"))))

My question is I just want to put some come conditional in .emacs and let it decide which CCL to run on the fly. So I wrote something like this.

(defvar *ccl-command*)

(cond ((not (null (string-match ".*64.*" system-configuration)))
   (setq *ccl-command*  "/path/to/64bit/ccl/lx86cl64"))
  ((not (null (string-match ".*86.*" system-configuration)))
   (setq *ccl-command* "/path/to/32bit/ccl/lx86cl")))

It pretty much does the trick but it simply doesn't work when I try to put this variable into above slime-lisp-implementations like:

...
(ccl (*ccl-command*))
...

Any ideas?

Upvotes: 1

Views: 304

Answers (1)

oakenshield1
oakenshield1

Reputation: 871

Sorry for the stupid question. I didn't know Elisp has the backtick like CL too. So

(add-to-list 'slime-lisp-implementations `(ccl (,*ccl-command*)))

did the trick.

Upvotes: 1

Related Questions