Can someone explain all the differences in the various lisp modes (inferior, superior, slime, cider)? Which came first? Which are extra packages? What should one use?
1 Answer
When you run a process inside Emacs, that process is "inferior" (i.e. a subprocess).
IELM M-x ielm is the builtin Inferior Emacs Lisp Mode. It's relatively featureless, but can definitely come in handy. (Esp. for learning Elisp)
SLIME, the Superior Lisp Interaction Mode for Emacs, is mostly a joke on the whole "inferior" process name. SLIME is used primarily for Common Lisp (although it can be used with other lisps to varying degrees via extensions). It boasts a large variety of "superior" functions, including debugging, interactive REPLs, and various IDE like functions.
CIDER, the Clojure Interactive Development Environment that Rocks for Emacs, is something like SLIME but for Clojure. (Clojure itself being a rather curious lisp that needs some extra work to interface with)
-
Does using C-x C-e send to the proper mode depending on file type? Aug 4, 2015 at 17:13
-
1
-
2You probably want to add Emacs Lisp interpreter (IELM) as another bullet point.
C-x C-e
in programming modes, is typically bound to sending the preceding expression to the interpreter for that language, and, in particular, this is true for Emacs Lisp, where Emacs itself acts as an interpreter.– wvxvwAug 4, 2015 at 19:42 -
1@24HrRevengeTherapist I have not, but that looks ridiculously awesome. Oct 20, 2015 at 18:20
-
2
slime
; if it's clojure, thencider
. You're unlikely to want to interact directly withinferior-lisp-mode
, as it's going to be much more bare-bones by comparison (that is, of course, unless you want bare-bones).