Emacs, Slime, and Clojure update

January 5, 2009

Some of you have noticed that when combined, the latest versions of the set of tools for editing Clojure in Emacs aren’t playing well together. Life on the bleeding edge means occasional paper cuts. I don’t yet understand exactly how Emacs, SLIME, and swank are working together, but I have been able to follow some advice online to fix the troubles I was having.

When starting SLIME in Emacs, everything seemed to work–Emacs and SLIME appeared to be communicating over local ports–but then an error message popped up:

error in process filter: Symbol's function definition is void: slime-redirect-inferior-output

I use Bill Clementson’s emacs setup, which he described on his blog. It turns out Clementson was already aware of the problem, which he describes in a thread on the Clojure mailing list. In a nutshell, swank-clojure has been updated and is a bit out of whack with the other edting tools. A patch has been applied, and if you checkout the latest tools, you’ll now get the patched version. You must then make a minor change to your .emacs file (Preferences.el for me and my Aquamacs setup):

From:

(eval-after-load "slime"
'(progn
(slime-setup)
...

to:

(eval-after-load "slime"
'(progn
(slime-setup '(slime-repl))

And then restart emacs. Works like a charm now. Thank you, Clojure community!

Advertisements

Next meeting: Saturday, January 3, at 1pm

December 10, 2008

Our second face-to-face meeting will be held in the auditorium at St. Stephen’s church in Washington, DC. This is a frequent meeting place of HacDC. Thanks to Serge Wroclawski for hooking us up with a great space. The address is 1525 Newton St NW, near the intersection of 16th St NW and Newton. Here is a Google map provided by HacDC showing the church’s location and a path from the Columbia Heights green line Metro station.

Homework

All members are asked to complete the following before our next meeting:

  1. Get up and running with an editing environment you feel comfortable with. Emacs is the classic choice, though it isn’t the only option. Look for more on Emacs/SLIME and other editors on this blog, and in the study group mailing list.
  2. Read the Preface and the first four chapters of Programming Clojure. (That means, up to and including “Unifying Data with Sequences”.) A new PDF beta version was just released that takes recent changes in Clojure’s syntax into account.
  3. Come up with at least one idea for a coding exercise you would like to take part in at the meeting. We’re going to break into small groups and hack some Clojure. Think of tasks that would take about 20 to 30 minutes and that explore some of the ideas in the reading.

I hope to see you on the 3rd.