Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Setting up a Clojure dev environment with Emacs and Slime (technomancy.us)
45 points by justinweiss on May 28, 2009 | hide | past | favorite | 10 comments



I would love to see the same for Arc...


woah, I've been using Emacs for years and never heard of Elpa. I always managed my .emacs by hand ...

ELPA may be worth looking into though.

Anyone have any first hand experience?


ELPA's pretty nice, I've only got two minor issues with it:

* It doesn't have everything in it yet, so about half the packages I use I still have to manage manually. (Someday I'll have to figure out how to submit stuff to ELPA...)

* If you take your .emacs with you across multiple machines, you still need a way of keeping your packages in sync. I like the way the emacs-starter-kit deals with this problem: http://github.com/technomancy/emacs-starter-kit/blob/b5d0aa7...

It's especially good for trying out packages that you're not sure you'll use on a regular basis.


ever seen a .emacs file after a savage CUSTOMIZE attack? well, ime, emacs and its packages are best managed by hand.


In my experience, customize is usually pretty good about only adding code to the bottom of my .emacs in a separate section (although, I rarely use it)


(setq custom-file (expand-file-name "~/.emacs.d/custom.el"))


whats the advantage of using Clojure over common lisp or scheme?


Clojure runs on the Java virtual machine, so you can run (mostly) anywhere and take advantage of the huge amount of libraries. It also has built-in support for concurrency with software transactional memory.

See http://clojure.org/rationale for more information


Also, its common data types (lists, vectors, maps, sets) are immutable and use pointer sharing to make changes extremely cheap. This makes reads always safe and lock free, but performance guarantees are slightly worse- O(log32N) for vectors instead of O(1)- but still good enough that you probably won't care.

To me that's just as impressive and important as the STM, but I rarely see it mentioned.


To me the biggest advantage (which Arc shares) is that the core language can change if it is advantageous to do so.

Scheme has the RnRx process, which seems slow moving to me, and lately steeped in a little more drama than I like. I'm not sure when the last time the ANSI spec for Common Lisp was changed.

I know you can change Common Lisp and Scheme via libraries, but that's not the same as everyone having the same functionality when they are on the same versions.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: