Quote: "Grog Grueslayer, I never got to read your post I lost that thread too, and I never intended to be rude on that other thread, and it’s not like that was the first time I saw an anti goto post or website."
Oh I didn't take offence either. I just mentioned that I didn't pick Anti-Goto Order as my signature on the fly I thought about it a long time. The acronym AGO means in the past as where GOTO should be for us. We should learn about GOTO and use it but once we learn about GOSUB and functions we need to leave GOTO in the past... hence AGO.
I personally don't use GOTO or even GOSUB anymore and only use functions but I have nothing against anybody that do use GOTO or GOSUB... it's just not my choice anymore.
Quote: "Oh, and thanks to everybody for contributing toward a college paper I am writing. Don’t worry, I am not quoting paraphrasing or mentioning in any way anything somebody else wrote on this thread."
I'm sure all of us (and I) would rather you quote us, name us, and show a link to this thread in your paper. If we were afraid to have other people see what we said we wouldn't be posting at all. I for one am proud to be the founder, president, and #1 member of The Anti-Goto Order.
Quote: "The point I was originally trying to make was that if the goto statements are commented appropriately along with the line number the goto will jump to, they can be easier to understand and trace than loops without labels."
How can that make it easier to read than a loop where you know for sure that if EXIT is seen it'll go to the end of the loop? With normal program flow you don't have to jump to a line number just to see what the program is going to do next... just look at the line after the loop to continue the program flow.
Quote: "This is because if you have enough control statements, you end up with a long line of end brackets clustered somewhere in your program. This is much messier than a mix of brackets and gotos with appropriate labels and line numbers."
Isn't this another issue? As long as the programmer indents his/her code it's easy to see the beginning and end of all loops and conditional checks. It doesn't matter if they use GOTO, GOSUB or functions... if they don't indent it's painful to look at.
Quote: "Also, jumping out of one complex process and into another is far easier to do with gotos than with loops and if statements."
It's far easier to use GOSUB or functions because it'll eventually go back to the line under the GOSUB or function call. The program doesn't have to GOTO then GOTO again to get back where it came from (usually at the start of the routine rather than where it jumped out). Why do you think IF statements are bad when you probably use them to be able to GOTO out of conditional checks?
Any code you think that absolutely has to have GOTO to work properly can be converted to not use GOTO easily.