It is possible to execute forms in a debugging context but AFAIK there is 
no easy setup that allows you to step through the execution.

The easiest way to evaluate forms in context is to setup emacs as described 
here http://clojure-doc.org/articles/tutorials/emacs.html. This will allow 
you to set breakpoints by inserting (swank.core/break) as described here 
http://hugoduncan.org/post/2010/swank_clojure_gets_a_break_with_the_local_environment.xhtml.
 
This slime/swank setup is robust and well documented.

nrepl-ritz offers a new way to set up emacs with a debugger. It has just 
been introduced by Hugo Duncan in the Clojure/conj and it works well for 
me. It is described here https://github.com/pallet/ritz/tree/develop/nrepl. 
It brings some functionality that is not available through slime/swank but 
it is not as complete and battle tested. To me the biggest benefit of this 
new setup is the ability to examine the stacktrace on exceptions. It allows 
you to inspect values and evaluate expressions at any point in the 
stacktrace. I find this to be helpful not only for my own errors but also 
for compiler errors because you can often find the expression that the 
compiler is complaining about somewhere in the stacktrace.

Stepping through the execution is harder to setup but it might be possible. 
The CDT debugger can be set up as described here 
http://georgejahad.com/clojure/swank-cdt.html. It worked great for me at 
some point but I'm no longer using it because doesn't work with openjdk 
AFAIK,


On Monday, November 26, 2012 11:15:44 PM UTC+1, Sol Tourne wrote:
>
>
> > In your list, the only thing you won't be able to do with Eclipse is 
> executing clojure forms in the context of the breakpoint. 
>
> Thanks, that's very useful info. 
>
> Is that doable in emacs? (ie 'executing clojure forms in the context of 
> the breakpoint'.) The answers so far emphasize emacs' customisability 
> (which is great) but say nothing about stepping through the execution with 
> a debugger -- is that something that's not doable with emacs?
>
> Generally, thanks everyone for all the advice!
>
>  

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to