[slime] swank-loader could use ASDF (#65)

João Távora joaotavora at gmail.com
Thu Jan 9 12:06:28 UTC 2014


Daniel Herring <dherring at tentpost.com> writes:

> Q: Have Quicklisp distribute Slime?
> A: Sure!  (Doesn't it already?)
> Q: Have Slime rely on ASDF?
> A: Sure.  The current Slime loader is generally reliable, but there is something
> to be said for pooling effort in a common solution, and ASDF has really improved
> in recent years.
> Q: Have Slime rely on Quicklisp?
> A: No way!  You've got this all backwards.  Quicklisp adds downloading,
> dependency management, and such to ASDF.  It also assumes a network connection
> and a certain level of trust in the repository.

Follow pull request #83, which proposes to implement exactly these
options.

> Thinking about an ideal, non-Quicklisp-assisted install, could something like
> the following work?
>
> - download and extract Slime (zip, tar.gz, or txz)
> - open slime-install.lisp in Emacs
> - follow some instructions that start an interactive session that configures and
> installs (or upgrades) Slime

It could work, but doesn't have to be that complicated, i.e. that
interactive session is too much I think. One of the following emacs-only
instructions should suffice:

    ELPA

      (require 'package)    ;; in emacs 24, or get package.el for 23

      M-x package-install RET slime RET                   ;; OR
      M-x package-install RET slime-some-contrib RET
      M-x slime
      M-x slime-connect      ;; .. to some server running a compatible
                             ;;    swank version

    El-get:

      (require el-get)      ;; not in either emacs, but very popular

      (el-get-install 'slime)              ;; OR
      (el-get-install 'slime-some-contrib)

      M-x slime              ;; OR
      M-x slime-connect      ;; .. to some server running a compatible
                             ;;    swank version

    Clone-my-own or tgz dist:

      (add-to-list 'load-path "<path-to-your-unpacked-slime>")
      (add-to-list 'load-path "<path-to-bundled-contribs>")
      (add-to-list 'load-path "<path-to-some-third-party-contrib>")

      (require 'slime)            ;; OR
      (require 'slime-autoloads)  ;; ...cuts your init time

      (slime-setup '(my contribs))

      M-x slime              ;; OR
      M-x slime-connect      ;; .. to some server running a compatible
                             ;;    swank version

This is my plan, and Helmut seems to agree with it.

It will be made easier if we merge #83 and use ASDF as the default slime
loading method, but is not impossible otherwise.

Note that "slime-some-contrib" might be a bundled contrib like
slime-repl or slime-fancy, or some third-party contrib.

The quicklisp install can stay put, of course, but as soon as these
options are provided, there is no need to launch a lisp, then install
elisp and then ask you to change your .emacs init file. But if that's
what you prefer, OK.



More information about the slime-devel mailing list