Skip to main content



      Home
Home » Eclipse Projects » Dynamic Languages Toolkit (DLTK) » Debugging Tcl
Debugging Tcl [message #32287] Wed, 01 October 2008 16:06 Go to next message
Eclipse UserFriend
Hi,

I've setup my system which I believe has all the correct components (SDK
3.4, DLTK .95, tcl8.5, and the komodo debugger 4.4). I'm confident that
all is well as I can debug a small application. If I try to debug a larger
one (~1500 lines) the debugger exits with a result of 0. Here is the log:

Event: CHANGE from org.eclipse.debug.core.model.RuntimeProcess
Event: CREATE from org.eclipse.debug.core.model.RuntimeProcess
Event: CHANGE from org.eclipse.debug.core.model.RuntimeProcess
Event: MODEL_SPECIFIC from
org.eclipse.dltk.internal.debug.core.model.ScriptDebugTarget
Event: CREATE from org.eclipse.dltk.internal.debug.core.model.ScriptThread
Event: MODEL_SPECIFIC from
org.eclipse.dltk.internal.debug.core.model.ScriptThread
Event: RESUME from org.eclipse.dltk.internal.debug.core.model.ScriptThread
Event: CHANGE from org.eclipse.dltk.internal.debug.core.model.ScriptThread
<< DbgpPacket (152 bytes) <?xml version="1.0" encoding="UTF-8" ?>
<response xmlns="urn:debugger_protocol" command="step_into"
transaction_id="10" status="stopping" reason="ok" />
>> stop -i 11
<< DbgpPacket (146 bytes) <?xml version="1.0" encoding="UTF-8" ?>
<response xmlns="urn:debugger_protocol" command="stop" transaction_id="11"
status="stopped" reason="ok" />
Event: TERMINATE from
org.eclipse.dltk.internal.debug.core.model.ScriptThread

Any ideas?
Re: Debugging Tcl [message #32322 is a reply to message #32287] Wed, 01 October 2008 17:58 Go to previous messageGo to next message
Eclipse UserFriend
More information:

If I set the Debug Configuration to Break on first line, the debugger
stops at package.tcl:15 (not the first line of the code I am debugging).
After clicking Resume, none of my other breakpoints are hit (even though I
see output from them in the Debug Console window.
Re: Debugging Tcl [message #32356 is a reply to message #32287] Wed, 01 October 2008 21:54 Go to previous messageGo to next message
Eclipse UserFriend
Hi Aaron,

you can turn on logging on the debugging engine side:

Preferences - Tcl - Debug - Engines - Active State

The 3rd block is "Logging" - specify the path for the log file.
It should contain more information about what happens internally in the
debugger.

Regards,
Alex

Aaron S. Kurland wrote:
> Hi,
>
> I've setup my system which I believe has all the correct components (SDK
> 3.4, DLTK .95, tcl8.5, and the komodo debugger 4.4). I'm confident that
> all is well as I can debug a small application. If I try to debug a
> larger one (~1500 lines) the debugger exits with a result of 0. Here is
> the log:
>
> Event: CHANGE from org.eclipse.debug.core.model.RuntimeProcess
> Event: CREATE from org.eclipse.debug.core.model.RuntimeProcess
> Event: CHANGE from org.eclipse.debug.core.model.RuntimeProcess
> Event: MODEL_SPECIFIC from
> org.eclipse.dltk.internal.debug.core.model.ScriptDebugTarget
> Event: CREATE from org.eclipse.dltk.internal.debug.core.model.ScriptThread
> Event: MODEL_SPECIFIC from
> org.eclipse.dltk.internal.debug.core.model.ScriptThread
> Event: RESUME from org.eclipse.dltk.internal.debug.core.model.ScriptThread
> Event: CHANGE from org.eclipse.dltk.internal.debug.core.model.ScriptThread
> << DbgpPacket (152 bytes) <?xml version="1.0" encoding="UTF-8" ?>
> <response xmlns="urn:debugger_protocol" command="step_into"
> transaction_id="10" status="stopping" reason="ok" />
>>> stop -i 11
> << DbgpPacket (146 bytes) <?xml version="1.0" encoding="UTF-8" ?>
> <response xmlns="urn:debugger_protocol" command="stop"
> transaction_id="11" status="stopped" reason="ok" />
> Event: TERMINATE from
> org.eclipse.dltk.internal.debug.core.model.ScriptThread
>
> Any ideas?
Re: Debugging Tcl [message #32460 is a reply to message #32356] Fri, 03 October 2008 10:13 Go to previous messageGo to next message
Eclipse UserFriend
Alex Panchenko wrote:

> you can turn on logging on the debugging engine side:

> Preferences - Tcl - Debug - Engines - Active State

> The 3rd block is "Logging" - specify the path for the log file.
> It should contain more information about what happens internally in the
> debugger.

Thanks Alex! I tried that and got a 1.3MB file that I attempted to wade
through full of excitement and ignorance. Quickly getting lost, I tried to
reduce my code to get to a state where the breakpoints started to work (as
I had seen it work on other programs).

And sure enough, I found it. Here is the line:

} elseif {[info exists identifier($first)] && [keylget
identifier($first) type] eq {label}]} {

Note the errant right bracket at the end of the conditional statement. I
removed it and everything was ducky. Clearly something went horribly amiss
here. Shouldn't the syntax checker have found this? Is this something I
should report or simply chalk it up to my carelessness and move on?

Aaron
Re: Debugging Tcl [message #32496 is a reply to message #32460] Fri, 03 October 2008 22:02 Go to previous messageGo to next message
Eclipse UserFriend
Hi Aaron,

We have expression checker in our plans, it's just not implemented yet.

At the moment you can use external tools mentioned at
http://wiki.tcl.tk/3162

DLTK have support of external tools:

You can configure them in Preferences - DLTK - Validators (TclChecker
has specific support, others could be used via "ExternalChecker")

And execute the configured tools with the right click "DLTK Validators"
submenu

Regards,
Alex

Aaron S. Kurland wrote:
> Alex Panchenko wrote:
>
>> you can turn on logging on the debugging engine side:
>
>> Preferences - Tcl - Debug - Engines - Active State
>
>> The 3rd block is "Logging" - specify the path for the log file.
>> It should contain more information about what happens internally in
>> the debugger.
>
> Thanks Alex! I tried that and got a 1.3MB file that I attempted to wade
> through full of excitement and ignorance. Quickly getting lost, I tried
> to reduce my code to get to a state where the breakpoints started to
> work (as I had seen it work on other programs).
>
> And sure enough, I found it. Here is the line:
>
> } elseif {[info exists identifier($first)] && [keylget
> identifier($first) type] eq {label}]} {
>
> Note the errant right bracket at the end of the conditional statement. I
> removed it and everything was ducky. Clearly something went horribly
> amiss here. Shouldn't the syntax checker have found this? Is this
> something I should report or simply chalk it up to my carelessness and
> move on?
>
> Aaron
>
Re: Debugging Tcl [message #32599 is a reply to message #32496] Sat, 04 October 2008 16:36 Go to previous message
Eclipse UserFriend
Thanks, Alex! You've been most helpful.
Previous Topic:internal checker
Next Topic:Syntax Highlighting in Wizard previewer
Goto Forum:
  


Current Time: Wed Jul 23 06:22:33 EDT 2025

Powered by FUDForum. Page generated in 0.04657 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top