Difference between revisions of "Slime"

From ArchWiki
Jump to: navigation, search
(External Resources: Peter Seibel's Practical Common Lisp)
Line 45: Line 45:
*To get excited about lisp and programming: http://www.paulgraham.com is recommended.
*To get excited about lisp and programming: http://www.paulgraham.com is recommended.
*http://www.cliki.net is a great lisp site
*http://www.cliki.net is a great lisp site
*http://www.gigamonkeys.com/book/ has an intro to Common Lisp and SLIME, and goes through the whole LISP language, giving practical examples

Revision as of 20:19, 10 January 2010

Tango-document-new.pngThis article is a stub.Tango-document-new.png

Notes: please use the first argument of the template to provide more detailed indications. (Discuss in Talk:Slime#)


Here is one way to get a lisp programming environment using emacs and slime and sbcl. Common Lisp was used to build viaweb by Paul Graham with 3 coders in 1995. It sold to yahoo for 50M us $ and became yahoo store. Lisp also powers orbitz.com. Other Lisp resources include scsh, drscheme, the book SICP, and Practical Common Lisp by Peter Seibel(free online), as well as ANSI common lisp and On lisp(free online) by Paul Graham. A gentle introduction to symbolic computation by Touretsky is free online as well. Happy hacking!

  • emacs - editor
  • slime - lisp mode for emacs
  • sbcl - a common lisp implementation (clisp is another good one, just substitute clisp for sbcl in the following)


The Arch repositories have emacs and sbcl packages:

  1. $ su - root
  2. # pacman -Sy emacs sbcl
  3. # cd /home/userX
  4. # wget http://aur.archlinux.org/packages/slime/slime.tar.gz
  5. # tar xzvf slim--.tar.gz
  6. # cd slime
  7. # makepkg
  8. # pacman -U slime-XX.tar.gz

Note: as an alternative to steps 3-8, you can install the slime-cvs package instead of going through AUR: pacman -Sy slime-cvs


Now to setup emacs to use slime, change user to userX and go to /home/userX. Now to edit your .emacs file, run:

$ vi .emacs

Now paste the below into this file, changing <code>g to whatever you userX is.

(setq inferior-lisp-program "/usr/bin/sbcl")
(add-to-list 'load-path "/home/g/slime/pkg/usr/share/emacs/site-lisp/slime/")
(require 'slime)

My userX is g, and /usr/bin/sbcl is path to steel bank common lisp (switch to clisp or CMU lisp if you like, which are other great common lisp implementations). Note: if you installed slime-cvs instead of the package from AUR, load-path should be set to /usr/share/emacs/site-lisp/slime/

Then save [:wq], and [emacs & enter] to launch emacs, [ALT-x slime -return-] to enter slime mode, which takes like 10s to load, and there you are a nice working lisp dev environment. Emacs has its own tutorial built in and www.sbcl.org has info on sbcl..enjoy..

For 64-bit

  • As root: pacman -S emacs clisp
  • wget slime from slime website
  • chown -R user: /usr/bin/clisp and slime dir
  • untar slime, follow readme by creating .emacs file in your users home....
  • start emacs, ALT-x slime

External Resources