My point was, Cut Back doesn't run any more sentences ever, while Step Out does (unless there is an error).
I think we are agreeing that the problem is that Cut Back is using an invalid result from the failing function to finish the sentence in the caller. Henry Rich On Thu, Jun 16, 2022, 7:50 PM Raul Miller <[email protected]> wrote: > On Thu, Jun 16, 2022 at 1:31 PM Henry Rich <[email protected]> wrote: > > Cut back differs in that it does not run the current object to > completion. > > That's what's supposed to happen. > > But, in http://www.jsoftware.com/pipermail/general/2022-June/039308.html > we are seeing z in the calling environment getting updated with a > result from the suspended execution. > > Inspecting the result of 13!:13'' we can see that z is rank 1 in every > stack frame. And, yet, after cut back, z has rank 2. > > This suggests, to me, that there are some code paths which do not > respect the conventions required by Cut Back. This would probably > cause other problems, also, in the handling of error cases and/or the > throw. keyword, and/or break handling and so on. > > -- > Raul > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
