Re: CLISP EMACS SWANK remote connection crash

C Habs <[email protected]> Tue, 13 Aug 2019 09:51:55 +0000
Newsgroups gmane.lisp.clisp.general
Message-ID <CANe8y8ag7kmHbG9GXvWc+hp7-PpJaJcUbsSORrM6nSgh2pG4NQ@mail.gmail.com>
On Sun, 11 Aug 2019 at 20:22, Vladimir Sedach <[email protected]> wrote:

> Here are some debugging steps you can try:
>
> What happens when you run CLISP on the remote machine in the
> terminal?
>
> What happens when you run SLIME and CLISP on the remote machine?
>
> That will narrow the problem down to either CLISP or SWANK.
>
> Vladimir
>

Thank you - I tried a few tests on the remote machine (32bit). Intriguing
it was.

CLISP on the remote machine was, as I would have expected, running fine.

CLISP and SLIME on the remote machine (using EMACS) was a problem -
constant 'unexpected disconnections'.

Not that I fully understand (or at all) why, but I had SLIME loaded via
QuickLisp *and* also in EMACS using the MELPA packaging. Once I removed any
quicklisp 'slime-helper' settings in, .emacs, leaving it set to use the
MELPA slime, everything worked ok on the remote machine.

It would seem that the Quicklisp setup and the MELPA setup don't exist
together well in the config somewhere (I couldn't pin it down).

Anyway, that left the remote machine with SLIME/SWANK etc in the QuickLisp
(or its ASDF) registry and one under the, .emacs.d (melpa loaded)
directory.  CLISP set as the inferior-lisp and everything working fine as
far as my experience went (now keeping the two instances of SLIME/SWANK in
quicklisp and emacs.d separate as such).

Next; on the remote machine, start CLISP in a terminal and issue,
(asdf:load-system :swank), then, (swank:create-server :dont-close t) and
all was seemingly well. This is using the QuickLisp registry version of
course and not the one under, .emacs.d (and I do not know how to tell CLISP
in a terminal to use the .emacs.d install).

Move back to the client machine (setup now exactly as the remote machine
with regard to CLISP, SLIME, EMACS, QuickLisp etc) and run EMACS.   Issue
M-x SLIME-CONNECT and enter required parameters. A connection is made but
no REPL prompt/buffer appears. Nothing...but the connection exists and is
not dropped or disconnected.

Close and restart EMACS again and this time issue, M-x SLIME, to get a
local session running. All is well and presents the REPL buffer. Then
issue, M-x SLIME-CONNECT and enter required parameters again for the remote
session, answer 'y' (yes) to 'close current connection' request and
lo-and-behold, the remote connection is established *with* the [remote]
REPL buffer working.

Summary: there is now a working remote connection. On the client machine,
if a local SLIME REPL session is not started before attempting a remote
connection, then no REPL buffer appears; but it works [in a fashion] if a
local SLIME session is started and then a remote connection established to
replace the local one.

I'm happy for now for the intended purpose, as this is obviously something
a bit complex in the CLISP, SLIME/SWANK, EMACS linkage - especially when
remote.

Apologies for and [confusing] terminology inappropriateness and I found it
hard to explain, so apologies for any confusing description of setup etc.

Thank you
Habs

_______________________________________________
clisp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/clisp-list