I spent significant chunks of time (on Mac):
- Textmate w / Clojure bundle
- Netbeans enclojure
- Eclipse ccw
- Emacs.app (not Aquamacs)
My opinion about them:
Textmate is a great way to get started, and obviously a very functional text editing environment. At some point, I would like to improve REPL integration.
NetBeans - Not wanting to learn Emacs, I switched to NetBeans. NetBeans Editor is OK. I found integration with building tools for things like Maven was rocky. NetBeans remote response is very good.
Emacs - I eventually bit the bullet and recognized Emacs. Editing with paredit is truly god-like. The REPL integration is great as you expected. clojure -test-mode is very convenient. But this is Emacs with all its pros and cons. If you intend to use Emacs on a Mac, I would recommend using Emacs.app rather than Aquamacs. Aquamacs does not comply with the standard gnu emacs conventions and it will be more difficult for you to create a portable environment or use other people's extensions. Right now I'm using Emacs for daily editing and a normal work environment.
Eclipse - The Eclipse editor is coming, and in structural editing there are some of the subtleties of paredit (but not truly significant features of slurp, barf, splice). Eclipse repl is just a command line replacement, and it's pretty bad compared to NetBeans. However, the remote NetBeans replica has been hacked into an independent project and will soon approach Eclipse, which will make Eclipse even more attractive. Maven integration is very good. I use Eclipse now when I want to see many files and projects at once, which is not easy for me to do in Emacs.
At the moment, my bet is that the Eclipse tool will begin to move away from others. But I still hope that a clojure-specific IDE will appear. :)
UPDATE March 10, 2014:
The world has changed a lot since I first wrote this. There are currently at least 6 very good Clojure environments.
If you donβt have fidelity to an existing editor and want to start easy, there are two great options:
1) Nightcode is all you basically need to write and run Clojure in a new editor written in Clojure. It is actually easy to set up and just get started.
2) Light Table - LT is written in ClojureScript, but I would say that it has more ambitious goals to change the way we write code, it is more interactive, and our data is more visible. Very active plugin scene.
If you are a Java programmer from the IDE world or feel that IDE support might be useful to you, check out:
3) IntelliJ Cursive - this restart of the IntelliJ Clojure environment quickly wins the converts. A great toolkit for Clojure, and it gets even faster.
4) Eclipse counterclockwise - CCW has been running for many years and continues to record the start of work and the ease of use of rough edges. If you are already an Eclipse user, you will feel at home.
If you are a keyboard hacker, both of them have a great environment:
5) Emacs with CIDER - Emacs is more a lifestyle than an editor, and for a long time was the only editor who could handle the professional level requirements for Clojure. If you do not already know Emacs, it is difficult to learn both Emacs and Clojure at the same time. The all-in-one environment that I saw as the most recommended is Prelude and Emacs Live .
6) Vim with Fireplace - Vim went through a couple of stages, but Fireplace is the place where he - a lot of people successfully with him.