Subject: [clisp-list] open .mem file in emacs (windows)

From: "Hoehle, Joerg-Cyril" <[email-masked]>
Date: Fri Nov 29 00:30:02 2002

Dan,

Emacs should be as capable as anything else to open CLISP with arbitrary images. Your problem seems to be one of switches not well set, as CLISP wants to read your .mem as a Lisp file (as if -M was missing or somehow wrong). You could try in Emacs to (debug-on-entry 'start-process) et al. to see how it invokes CLISP: you'd soon see what's wrong.

Beware of spaces in directory names and the problems with shell quoting that arise from that, but that doesn't seem to be your problem.

Here's some stuff of mine (using FSF-Emacs 20.7.1):

(defvar lisp-program-choices '())
(setq lisp-program-choices
  '(("oaklisp-98" . "D:\\hoehle/Code/Oaklisp/Oak98-alex/WINNT/Oak98AS/emulator.exe D:\\hoehle/Code/Oaklisp/Oak93/lib/oaklisp.loc")
    ("clisp-2.28" . "H:/sspace/src/clisp-2.28/src/lisp.exe -M H:/sspace/src/clisp-2.28/src/lispinit.mem -B H:/sspace/src/clisp-2.28 -Efile UTF-8")
    ;;Problem: Emacs/4GW doesn't detect when process terminates
    ;;dos32\dos4gw dos32\emu_dos.exe worlds\oaklisp.loc
    ("oaklisp-dos4gw" . "C:\\Programme\\Oaklisp\\Oak98\\dos32\\dos4gw.exe C:\\Progra~1\\Oaklisp\\Oak98\\dos32\\emu_dos.exe C:\\Progra~1\\Oaklisp\\Oak98\\worlds\\Oaklisp.loc")
    ("jscheme" . "java -cp h:/sspace/archive/jscheme.jar jscheme.REPL")
    ("kawa" . "java -classpath h:/sspace/archive/kawa-1.6.98.jar kawa.repl")
    ("kawa-1.6.99.1" . "java -classpath h:/sspace/archive/kawa-1.6.99.1.jar kawa.repl")
    ("brl"  . "java -classpath h:/sspace/archive/kawa-1.6.97.1brl.jar;h:/sspace/archive/brl-2.1.30.jar kawa.repl -f h:/www/Redakteur/brls/brl-global.scm --")
    ("clisp-2.28-modules" . "H:/sspace/src/clisp-2.28/src/lispm.exe -M H:/sspace/src/clisp-2.28/src/lispinit.mem -B H:/sspace/src/clisp-2.28 -Efile UTF-8")
    ("clisp-2.28-regexp" . "H:/sspace/src/clisp-2.28/src/lispr.exe -M H:/sspace/src/clisp-2.28/src/lispinit.mem -B H:/sspace/src/clisp-2.28 -Efile UTF-8")
    ("clisp-2.28-dynload" . "H:/sspace/src/clisp-2.28/src/lispd.exe -M H:/sspace/src/clisp-2.28/src/lispinit.mem -B H:/sspace/src/clisp-2.28 -Efile UTF-8 -Eterminal ISO-8859-1")
    ("clisp-2.28-gdi" . "H:/sspace/src/clisp-2.28/src/lispg.exe -M H:/sspace/src/clisp-2.28/src/lispinit.mem -B H:/sspace/src/clisp-2.28 -Efile UTF-8 -i H:/Code/gdi/gdi.fas")
    ("clisp-2.27" . "C:\\Programme\\CLISP\\clisp-2.27\\lisp.exe -I -B C:\\Programme\\CLISP\\clisp-2.27\\ -M C:\\Programme\\CLISP\\clisp-2.27\\lispinit.mem -L francais")))

(defun choose-lisp (program)
  (interactive
   (list (cdr (assoc (completing-read "Run Lisp: " lisp-program-choices nil t)
		     lisp-program-choices))))
  (run-lisp program))

This is using inf-lisp.el, not ILISP. I've had some strong bias against ILISP in the early ninetees, and no time to re-evaluate it. My gripes where about UI-aspects, e.g. the obtrusive popper windows and other things. OTOH, it's far more advanced than the basic (good ol') inf-lisp.el, e.g. featuring multiple sessions, packages.

Regards,
	Jörg Höhle.