RE: [Newbies] whats the difference between over and through

2016-05-17 Thread Ron Teitelbaum
Nice description Herbert!  That reminded me of one extra thing.  It's kind of 
hidden but very useful.

If you need to get out of a loop but don't want to restart and add a halt, you 
can click on some place in your code then select "Run To Here" from the pop up 
menu (right click on windows).

That will continue your code until it gets to where the cursor is currently 
located and resume debugging from that location.

That's pretty useful too.

All the best,

Ron

> From: Herbert König
> Sent: Tuesday, May 17, 2016 4:33 PM
> 
> Hi Joe,
> 
> a practical tip if you debug loops:
> 
> myCollection collect: [:each| "You need 'through' to get into the loop"
> 
>  self doThis. "Through or over are ok here"
> 
>  self doThatWhichTakesLongToRun. "use over to go over this long running
> method"
> 
>  somethingElse doMore "here you need to press through again or you'll
> learn about the inner workings of collect :-))"]
> 
> I want to mention three things:
> 
> 1- if you are inside a loop with no other block inside you can always
> continue with pressing 'Through'. This will then go through the next iteration
> of the loop but step over the method sends inside the loop.
> Methods inside the loop seem to take much longer if you go over them via
> 'through' than if you go over them via 'over'. Especially on slow hardware.
> 
> 2- if by accident you press 'over' while debugging the last send inside a loop
> you get to the outer context of your loop which is very confusing at the
> beginning. To get back into your loop you have to step 'into' the block you'll
> see there.
> 
> 3- if you've seen enough after being 'through' three iterations of of a
> 1000 iteration loop you continue one level above (top pane of the
> debugger) and debug 'over' that loop.
> 
> Most important : experiment.
> 
> I have no Squeak at hand so take the above just as a coarse description on
> what you may encounter on your debugging journey.
> 
> I usually debug my code into life and I still manage to press the wrong
> buttons while debugging :-))
> 
> 
> Cheers,
> 
> 
> Herbert
> 
> Am 17.05.2016 um 19:36 schrieb Ron Teitelbaum:
> > Hi Joe,
> >
> > This is a very good question.  It's something that if you been using the
> debugger for a long time comes naturally but when you are new it seems
> strange.
> >
> > Take this code for example:
> >
> > | lock |
> > lock := Mutex new.
> > lock critical: [Transcript show: 'I am here']
> >
> > debug this code and play with the different options to see how this works.
> In general there are a number of times where what you want to debug is
> inside a block.  Getting into that block can be a real pain.  In many cases 
> you
> really just want to say take me through this outer code and into that block
> so I can debug what is inside it. (in this case Transcript show: )
> >
> > "Over" will skip it and "Into" will take you down the rabbit hole of code
> that surrounds it.
> >
> > In this case try debugging that code using the different options and see
> how much easier getting inside that block is when you use Through.
> >
> > I think the accepted description is:
> > Through: if the debugger is going to execute a block, with this button you
> can step though this block.
> >
> > and it makes sense when you think I want to step through what is inside
> the block.  "Take me through the inside of this block".
> >
> > Does that make sense?
> >
> > All the best,
> >
> > Ron Teitelbaum
> >
> >> -Original Message-
> >> From: beginners-boun...@lists.squeakfoundation.org [mailto:beginners-
> >> boun...@lists.squeakfoundation.org] On Behalf Of Joseph Alotta
> >> Sent: Tuesday, May 17, 2016 1:07 PM
> >> To: beginners@lists.squeakfoundation.org
> >> Subject: [Newbies] whats the difference between over and through
> >>
> >> Greetings,
> >>
> >> What’s the difference between over and through in the debugger?
> >>
> >> Is there something that goes to the next line of code?
> >>
> >>
> >> Sincerely,
> >>
> >> Joe.
> >>
> >>
> >> ___
> >> Beginners mailing list
> >> Beginners@lists.squeakfoundation.org
> >> http://lists.squeakfoundation.org/mailman/listinfo/beginners
> > ___
> > Beginners mailing list
> > Beginners@lists.squeakfoundation.org
> > http://lists.squeakfoundation.org/mailman/listinfo/beginners
> 
> ___
> Beginners mailing list
> Beginners@lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners

___
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners


Re: [Newbies] whats the difference between over and through

2016-05-17 Thread Herbert König

Hi Joe,

a practical tip if you debug loops:

myCollection collect: [:each| "You need 'through' to get into the loop"

self doThis. "Through or over are ok here"

self doThatWhichTakesLongToRun. "use over to go over this long 
running method"


somethingElse doMore "here you need to press through again or 
you'll learn about the inner workings of collect :-))"]


I want to mention three things:

1- if you are inside a loop with no other block inside you can always 
continue with pressing 'Through'. This will then go through the next 
iteration of the loop but step over the method sends inside the loop. 
Methods inside the loop seem to take much longer if you go over them via 
'through' than if you go over them via 'over'. Especially on slow hardware.


2- if by accident you press 'over' while debugging the last send inside 
a loop you get to the outer context of your loop which is very confusing 
at the beginning. To get back into your loop you have to step 'into' the 
block you'll see there.


3- if you've seen enough after being 'through' three iterations of of a 
1000 iteration loop you continue one level above (top pane of the 
debugger) and debug 'over' that loop.


Most important : experiment.

I have no Squeak at hand so take the above just as a coarse description 
on what you may encounter on your debugging journey.


I usually debug my code into life and I still manage to press the wrong 
buttons while debugging :-))



Cheers,


Herbert

Am 17.05.2016 um 19:36 schrieb Ron Teitelbaum:

Hi Joe,

This is a very good question.  It's something that if you been using the 
debugger for a long time comes naturally but when you are new it seems strange.

Take this code for example:

| lock |
lock := Mutex new.
lock critical: [Transcript show: 'I am here']

debug this code and play with the different options to see how this works.  In 
general there are a number of times where what you want to debug is inside a 
block.  Getting into that block can be a real pain.  In many cases you really 
just want to say take me through this outer code and into that block so I can 
debug what is inside it. (in this case Transcript show: )

"Over" will skip it and "Into" will take you down the rabbit hole of code that 
surrounds it.

In this case try debugging that code using the different options and see how 
much easier getting inside that block is when you use Through.

I think the accepted description is:
Through: if the debugger is going to execute a block, with this button you can 
step though this block.

and it makes sense when you think I want to step through what is inside the block.  
"Take me through the inside of this block".

Does that make sense?

All the best,

Ron Teitelbaum


-Original Message-
From: beginners-boun...@lists.squeakfoundation.org [mailto:beginners-
boun...@lists.squeakfoundation.org] On Behalf Of Joseph Alotta
Sent: Tuesday, May 17, 2016 1:07 PM
To: beginners@lists.squeakfoundation.org
Subject: [Newbies] whats the difference between over and through

Greetings,

What’s the difference between over and through in the debugger?

Is there something that goes to the next line of code?


Sincerely,

Joe.


___
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners

___
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners


___
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners


RE: [Newbies] whats the difference between over and through

2016-05-17 Thread Ron Teitelbaum
Hi Joe,

This is a very good question.  It's something that if you been using the 
debugger for a long time comes naturally but when you are new it seems strange.

Take this code for example:

| lock |
lock := Mutex new.
lock critical: [Transcript show: 'I am here']

debug this code and play with the different options to see how this works.  In 
general there are a number of times where what you want to debug is inside a 
block.  Getting into that block can be a real pain.  In many cases you really 
just want to say take me through this outer code and into that block so I can 
debug what is inside it. (in this case Transcript show: )

"Over" will skip it and "Into" will take you down the rabbit hole of code that 
surrounds it.  

In this case try debugging that code using the different options and see how 
much easier getting inside that block is when you use Through.

I think the accepted description is:
Through: if the debugger is going to execute a block, with this button you can 
step though this block.

and it makes sense when you think I want to step through what is inside the 
block.  "Take me through the inside of this block".

Does that make sense?

All the best,

Ron Teitelbaum 

> -Original Message-
> From: beginners-boun...@lists.squeakfoundation.org [mailto:beginners-
> boun...@lists.squeakfoundation.org] On Behalf Of Joseph Alotta
> Sent: Tuesday, May 17, 2016 1:07 PM
> To: beginners@lists.squeakfoundation.org
> Subject: [Newbies] whats the difference between over and through
> 
> Greetings,
> 
> What’s the difference between over and through in the debugger?
> 
> Is there something that goes to the next line of code?
> 
> 
> Sincerely,
> 
> Joe.
> 
> 
> ___
> Beginners mailing list
> Beginners@lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners

___
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners


Re: [Newbies] whats the difference between over and through

2016-05-17 Thread Bernhard Pieber
Hi,

The difference is only relevant for statements with blocks. Over executes the 
next message send and then stops. Over does not enter block, though. Through 
does.

Cheers,
Bernhard

> Am 17.05.2016 um 19:06 schrieb Joseph Alotta :
> 
> Greetings,
> 
> What’s the difference between over and through in the debugger?
> 
> Is there something that goes to the next line of code?
> 
> 
> Sincerely,
> 
> Joe.
> 
> 
> ___
> Beginners mailing list
> Beginners@lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners

___
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners


[Newbies] whats the difference between over and through

2016-05-17 Thread Joseph Alotta
Greetings,

What’s the difference between over and through in the debugger?

Is there something that goes to the next line of code?


Sincerely,

Joe.


___
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners