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

Reply via email to