> gui debugger should have a button to view stack.

The gui debugger shows the stack one line per definition in the middle
panel, and has a button to view dbstack''. The stack viewer could be a bit
smarter, allowing drill-down to view the parameters better.

On Tue, May 14, 2019 at 5:28 PM bill lam <[email protected]> wrote:

> gui debugger should have a button to view stack.
>
> If using 13!:x directly, dbstk, dbstack, dbs, dbst should be helpful. type
> dbhelp to see a terse summary.
>
> On Wed, May 15, 2019, 6:02 AM Raul Miller <[email protected]> wrote:
>
> > This matches the bits and pieces that I remember seeing, and includes
> > a couple details that I hadn't thought to look for.
> >
> > Thanks,
> >
> > --
> > Raul
> >
> > On Tue, May 14, 2019 at 5:55 PM Henry Rich <[email protected]> wrote:
> > >
> > > When you hit a suspension, there is a J stack and the C program is in a
> > > loop at the bottom level of C execution waiting for input.  When you
> say
> > > 'cut stack', Roger goes sends a message to the current execution level
> > > saying 'abort', and a message to the next-higher level saying 'restart
> > > the last instruction'.  Then suspension returns, with an error value.
> > > This errors its way up the C execution levels.  It gets to the aborted
> > > explicit definition, which duly aborts.  Execution continues until it
> > > gets to the next explicit definition, which is where you cut the stack
> > > back to.  That wakes up and runs (unmindful of the pending error),
> > > restarting at the failing line.  Because debug is on, the execution of
> > > this line is intercepted before it is executed, and you go back into
> > > suspension at the new level.
> > >
> > > No longjmp required.
> > >
> > > Henry Rich
> > >
> > > On 5/14/2019 2:51 PM, Raul Miller wrote:
> > > > I think I see what you are getting at: C stack function calls do not
> > > > show up as stack entries for 13!:x
> > > >
> > > > But, for example, if I use (".) or some user defined verb instead of
> > > > (,) as an example, I can wind up with additional stack frames from my
> > > > debug session and there will be additional C stack frames behind the
> > > > scenes which would need to be unwound when cutting back the J stack.
> > > >
> > > > (This is in contrast to how threaded code can work -- in threaded
> code
> > > > the stack of the host programming language can be kept level when
> > > > making calls in the client language -- depending on the threading
> > > > implementation, of course...)
> > > >
> > > > Thanks,
> > > >
> > >
> > >
> > > ---
> > > This email has been checked for viruses by AVG.
> > > https://www.avg.com
> > >
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to