Mar 13 2010

My First Emacs (plus Slime, Swank, Clojure) on Mac OSX

Published by at 6:07 pm under Technology   

Emboldened a talk that Ryan Senior gave at the St. Louis Lambda Lounge (now available as a video), I grabbed the most popular two Emacs versions for Mac OSX:

and set up each on my Macbook Pro (10.6.2). For each Emacs, I also set up SLIME, Swank, and Clojure.

If that sounds like a bunch of garbled nonsense, don’t worry, it is simply a sign that you are a normal, well adjusted person, rather than a Lisp person.

It was a bit irritating to get these tools up and running the first time; there are countless web pages with the details (I won’t make that worse by adding my own here). The challenge is figuring out which instructions to follow, while ignoring the rest. The most tractable approach for me, for a quickly-installed, easily-updating, fewest-steps process, was to install the needed packages from ELPA, without any manual downloading/configuration of SLIME, Swank, etc. at all. I have no command line operations to share with you, because in the process I recommend, there aren’t any.

I used Emacs in school, but not at all in the last 10 years. Since then, my expectations for developer tools have grown – I think it is reasonable for a modern development environment to simultaneously:

  1. be easily discoverable, for a fast start
  2. cooperate with its environment well
  3. make good use of the large high-res display on most PCs, to expose expected status and control surfaces
  4. be deeply configurable and highly powerful

My experience, coming in from that point of view, differs from what Ryan and a couple other people suggested: I suggest Aquamacs. It is much more of a good citizen on the Mac platform. Its menus are much more approachable. Printing works in a Mac way. You get tabs showing your buffers, by default. You get menu options to gather them up in to one window(frame) or split them apart, all by default.

It may indeed by worth switching to the non-Aqua version later, if/when you get so deeply in the toolset that the pure emacs experience is preferable… but I estimate you’d need to be pretty far down the path (much further than I).

Something I should try out eventually is the Emacs Starter Kit. Perhaps it would have given a sufficiently “saner set of defaults” to make the non-Aqua version a more reasonable choice. Emacs gurus seem to lean that direction, overall.

If you found this post useful, please link to it from your web site, mention it online, or mention it to a colleague.

2 responses so far

2 Responses to “My First Emacs (plus Slime, Swank, Clojure) on Mac OSX”

  1. Jeff says:

    Funny this is on a Macbook Pro (Late 2008 model), I tried the ELPA junk and it failed time and time again. I tried cleaning everything I could and starting from scratch many times. It ALWAYS failed. I totally agree with you that 90% of the instructions out there do not work and obviously were not tried on more than one machine. I finally found some obscure posting to message board that said “Oh put these three jars in your ~/.swank-clojure directory. Sure enough that finally got the clojure slime stuff and repl working in Aquamacs.

    If Clojure is ever going to be even close to mainstream, and that is a big if, it needs real tooling that is not based on a 40 year old editor that was ‘cool’ in the early 90’s on Sun 2/120 workstations. 🙂

  2. Kyle Cordes says:

    Jeff’s comment is good; but the situation is not as bad as it sounds. I was able to get all those tools working via several different installation approaches. I recommend ELPA as the easiest/shortest path, and never found anything junky about it. Overall, setting up Clojure etc. was far, far from the most painful tool setup I’ve done.