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
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
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
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
2017-04-08 6:46 GMT+02:00 Ben Coman <btc@openinworld.com>:
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."
And issue for this part 19929 <https://pharo.fogbugz.com/f/cases/19929/Comment-guard-to-warn-debugging-top-...>
Hi Ben, 2017-04-08 6:32 GMT+02:00 Ben Coman <btc@openinworld.com>:
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?
I opened issue 19928 <https://pharo.fogbugz.com/f/cases/19928/Debugger-step-over-through-last-doIt...>. (I not found yours, right?)
Hi Ben, On Fri, Apr 7, 2017 at 9: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?
I just took a look at this in Squeak and fixed it there. All I had to do was fix Process>>completeStep: and arrange that the Debugger wasn't confused when it got back the nil suspendedContext of a terminated process and that it disabled its into/over/through buttons on process termination. You can see the Squeak changes in these two commits: The Trunk: Kernel-eem.1093.mcz <http://forum.world.st/The-Trunk-Kernel-eem-1093-mcz-tp4941815.html> The Trunk: Tools-eem.756.mcz <http://forum.world.st/The-Trunk-Tools-eem-756-mcz-tp4941816.html> cheers -ben
HTH _,,,^..^,,,_ best, Eliot
participants (4)
-
Ben Coman -
Denis Kudriashov -
Eliot Miranda -
Nicolai Hess