Hi Ben,

    hmmm, good thought.  Seems to me that the right solution is in the primitive simulations in Context>>tryPrimitive... or Context>>doPrimitive... (*) so that the debugger process isn't terminated, but the process being debugged is.


(* at my phone right now so don't have the code to look at to answer the correct selectors)
_,,,^..^,,,_ (phone)

On Apr 8, 2017, at 7:23 AM, Nicolai Hess <nicolaihess@gmail.com> wrote:



2017-04-08 6:46 GMT+02:00 Ben Coman <btc@openinworld.com>:


On Sat, Apr 8, 2017 at 12:32 PM, Ben Coman <btc@openinworld.com> wrote:

I imagine a newcomer exploring the system could easily step off the end of the debug stack like this...
 
(1 printString)   "debugIt"  
then StepOver six times where the image hangs at "Processor terminateActive"

This could have a strong impact against first impressions.
What would it take to guard against this?

cheers -ben

As an immediate stop-gap I'm adding the following comment to  BlockClosure>>newProcess

"IMPORTANT! Debug stepping this deep infrastructure may lock your Image"
"If you are not sure what you are doing, close the debugger now." 

cheers -ben


+1