Clojure's a decent choice for writing a cross-platform UI application, using Swing. Java+Swing sucks, but Clojure+Swing works pretty well. I wrote a dependency graph library, dgraph, which significantly reduces the amount of boilerplate required to keep UI state in sync.
I've been considering writing a desktop app. I've been wanting to get into the JVM action, but dimly remember being scared off by Swing years ago. What about Clojure makes it better at using Swing?
Swing can be a lot of repetitive code. Clojure has mechanisms (functions, macros and libraries) that can help you to abstract this away to exactly the way you like to write user interfaces.
http://github.com/gcv/dgraph
I also wrote an embedded database library for Clojure, based on Berkeley DB.
http://github.com/gcv/cupboard
Which specific features make Clojure a good choice? Interactive development and macros.