Saikat, If you're using slime, you might find this useful: add this function and call it in the first line of your from your init-session function:
(defun init-slime-debugging () "Don't catch errors and redirect debugger to slime. Works great !" (setf hunchentoot:*catch-errors-p* nil) (setf *debugger-hook* 'swank:swank-debugger-hook)) Then, declare (break "foo: ~A" obj1) or something like this in your code. WHen you hit the break SLIME will give you a full stack trace which you can examine, including objects passes as args to functions. I still haven't figured out how to actually step in the Lisp code, but the above changes have been very handy tracking bugs that I have run into so far. Yarek Yarek On Dec 8, 2:31 pm, Saikat Chakrabarti <[EMAIL PROTECTED]> wrote: > Thanks Leslie, that was very helpful. I was a bit lost though because > I had tried format and it still didn't seem to work. I realized then > that format seems to print output when I run SBCL from a terminal > window, but it doesn't seem to work when I run my webapp from SLIME. > Have you been able to get output to the SLIME repl? > > Thanks, > Saikat > > On Dec 8, 4:57 am, "Leslie P. Polzer" <[EMAIL PROTECTED]> wrote: > > > On Dec 7, 11:18 pm, Saikat Chakrabarti <[EMAIL PROTECTED]> wrote: > > > > I have managed to get through some of the example apps in Weblocks and > > > am trying to make a very simple app right now that uses the login > > > widget. In trying to get this working I have 2 questions (hopefully > > > though the answer to the first will help me with the second): > > > > 1. How do you guys debug weblocks applications right now? > > > On the client/http side with Firebug and using TRACE, FORMAT and the > > repl on the server side. > > > > I wasn't really sure how though (I know very little about > > > Javascript). Where can I place that code? Just within a script tag > > > in my page using ajax? > > > That's referring to weblocks.js. > > > You can just use Firebug, though. > > > > 2. The problem I am running into right now that requires debugging > > > (and for which it isn't enough to just get a backtrace in the browser) > > > is that when I click login on my page with the login widget, the > > > program seems to hang (and I am not sure where). Even stranger is > > > that when I stop and start weblocks and navigate to my webapp, the app > > > never loads again (it seems like it is still hanging). Looking at > > > SBCL's performance, it seems like SBCL is somehow going into an > > > infinite loop, and the only way I get my webapp to work again is by > > > restarting SBCL. So my question is - is there a way I can debug this > > > Try (setf hunchentoot:*catch-errors-p* nil) before the error occurs. > > > > or even using print statements (i tried > > > just (print "x") in my function but it doesnt seem to be routing that > > > to the SBCL console - should it be?) > > > PRINT doesn't terminate its output with a newline, thereby not > > flushing the output buffer. > > > Use > > > (print "x") > > (terpri) > > > or just > > > (format t "x~%") > > > > by stepping through the code > > > Checkout BREAK. > > > Hope that helps, > > > Leslie --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "weblocks" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/weblocks?hl=en -~----------~----~----~----~------~----~------~--~---
