https://github.com/GeorgeJahad/debug-repl/blob/master/src/alex_and_georges/debug_repl.clj
is some of the most enlightening clojure code I have read. Any other suggestions? Criteria for code I'm looking for: * need not be production use * ideally short * focus is "demonstrate key idea, not necessarily worry about production use" On Fri, Jan 24, 2014 at 9:12 PM, Jarrod Swart <jcsw...@gmail.com> wrote: > Its a part of Chapter 17, just so you know its only a small exercise > showing the beauty of Clojure, Lisp and Macros. Its only about 6 six > pages. The footnote: > > The code in this section is based on *debug-repl* created by the amazing > George Jahad, > extended by Alex Osborne, and integrated into Swank-Clojure by Hugo Duncan. > > So maybe check those out. That said I think its a really good book and > Manning often has specials going so you get Joy of Clojure 1 & 2 for cheap. > > On Friday, January 24, 2014 8:51:16 PM UTC-5, t x wrote: > >> I am willing to buy the book for this chapter alone. >> >> However, looking at http://www.manning.com/fogus2/ I can't seem to find >> it. Which chapter is it? >> >> >> >> On Fri, Jan 24, 2014 at 3:46 PM, Jarrod Swart <jcs...@gmail.com> wrote: >> >>> The second version of The Joy of Clojure talks about building a >>> debugging repl that allows insertion of breakpoints into code. Perhaps >>> something similar could be done here. >>> >>> >>> On Friday, January 24, 2014 4:38:59 PM UTC-5, t x wrote: >>> >>>> Found it, apparently it's >>>> >>>> debug-repl => swank-clojure => CDT => ritz >>>> >>>> It appears cider does not yet support this, so ritz is probably the >>>> "most powerful" at the moment. >>>> >>>> >>>> On Fri, Jan 24, 2014 at 3:39 AM, t x <txre...@gmail.com> wrote: >>>> >>>>> Hi, >>>>> >>>>> One thing I miss from pre-Clojure scheme days is as follows: >>>>> >>>>> ## What I want >>>>> >>>>> 1 => (foo) ;; I'm calling foo at the repl >>>>> ... foo executes ... >>>>> ... at some point, an exception is thrown ... >>>>> >>>>> 2 => my interpreter _starts a new repl_ >>>>> * at the point where the exception was thrown >>>>> * lets me examine local environment variables >>>>> * lets me execute commands >>>>> * lets me "resume" the execution >>>>> >>>>> >>>>> ## Why "it can't work" >>>>> >>>>> Now, I understand why this can not work in general in Clojure, i.e. >>>>> the following example: >>>>> >>>>> (defn foo [] >>>>> (.someJavaFunctionThatThrowsException object)) >>>>> >>>>> In this case, the above is impossible since the exception is thrown >>>>> from _java land_ rather than Clojure land. >>>>> >>>>> >>>>> ## Why it might work >>>>> >>>>> Now, I'm not writing any code in java. The work I'm doing is pure >>>>> clojure. I can throw when the exception is thrown. >>>>> >>>>> >>>>> Is there some library, where instead of doing >>>>> >>>>> (defn foo [] >>>>> ... >>>>> (throw (ex-data ...)) >>>>> ...) >>>>> >>>>> I instead do: >>>>> >>>>> (defn foo [] >>>>> ... >>>>> (something-went-wrong-please-fire-up-a-repl) >>>>> ...) >>>>> >>>>> ? >>>>> >>>>> Thanks! >>>>> >>>> >>>> -- >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Clojure" group. >>> To post to this group, send email to clo...@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+u...@googlegroups.com >>> >>> For more options, visit this group at >>> http://groups.google.com/group/clojure?hl=en >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "Clojure" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to clojure+u...@googlegroups.com. >>> >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >> >> -- > -- > 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 > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > -- -- 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 --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.