From: io_x on 24 Apr 2010 06:13 [Xpost to: alt.comp.programming, alt.lang.asm, comp.lang.c, comp.lang.c++, comp.programming] the people that speak not good about "goto" are uttled wrong; their code bug full etc more distant is your code from goto more your code is bug full and incompresible the "goto" is the key word for programming; all the remain, other than goto or jmp or jc or jz, and the easy cpu layout is the wrong way for programming i advise all you Good Morning
From: Ali Karaali on 24 Apr 2010 06:06 I use goto to break nested for loops and I can't see a reason to ban goto. Ali On 24 Nisan, 13:13, "io_x" <a...(a)b.c.invalid> wrote: > [Xpost to: alt.comp.programming, alt.lang.asm, > comp.lang.c, comp.lang.c++, comp.programming] > > the people that speak not good about "goto" > are uttled wrong; their code bug full etc > > more distant is your code from goto > more your code is bug full and incompresible > > the "goto" is the key word for programming; > all the remain, other than goto or jmp or jc or jz, > and the easy cpu layout > is the wrong way for programming > > i advise all you > Good Morning
From: Alexei A. Frounze on 24 Apr 2010 06:35 On Apr 24, 3:13 am, "io_x" <a...(a)b.c.invalid> wrote: > [Xpost to: alt.comp.programming, alt.lang.asm, > comp.lang.c, comp.lang.c++, comp.programming] > > the people that speak not good about "goto" > are uttled wrong; their code bug full etc > > more distant is your code from goto > more your code is bug full and incompresible > > the "goto" is the key word for programming; > all the remain, other than goto or jmp or jc or jz, > and the easy cpu layout > is the wrong way for programming > > i advise all you > Good Morning Everything may be used, misused and abused, goto included. There are good and bad usage patterns and goto is not an exception here. I can list a number of other things that may be just as bad as a poorly used goto (or as good as a good goto). See? Alex
From: Mensanator on 24 Apr 2010 08:06 On Apr 24, 5:13 am, "io_x" <a...(a)b.c.invalid> wrote: > [Xpost to: alt.comp.programming, alt.lang.asm, > comp.lang.c, comp.lang.c++, comp.programming] > > the people that speak not good about "goto" > are uttled wrong; their code bug full etc > > more distant is your code from goto > more your code is bug full and incompresible > > the "goto" is the key word for programming; > all the remain, other than goto or jmp or jc or jz, > and the easy cpu layout > is the wrong way for programming > > i advise all you > Good Morning Yeah, there's nothing more fun than converting BASIC to Pascal. Only to discover that goto was used to return from a sub-routine without clearing the stack.
From: spinoza1111 on 24 Apr 2010 08:11
On Apr 24, 6:06 pm, Ali Karaali <ali...(a)gmail.com> wrote: > I use goto to break nested for loops and I can't see a > reason to ban goto. Why not use break instead? Does the same thing, spares you from having to define a label. There are two senses in which a program can be structured. The first is syntactical, and to be syntactically structured, the source code of the program must be restricted to structured syntax, of which neither goto nor break is a strict example. You'd have to simulate the break logic: broken = false; for(!broken && condition) { . . . if (exceptional condition) broken = true; else { . . . } } The second is semantic. To be structured in this way, the program must be decomposable without change into blocks, each at most one entry and at most one exit, and each of which is one of the Bohm-Jacopini constructs process, if..then..else, or do while. If the program is syntactically structured, it must be semantically structured. But the reverse is not true; an assembler program using go to can be semantically structured but it is not syntactically structured, like this inefficient and contrived example LOAD 0 STOR i LBL1: LOAD i COMP limit IFGE LBL19 .. .. .. IFEQ LBL12 LOAD j STOR v GOTO LBL129 LBL12: LOAD k STOR v2 LBL129: .. .. .. LOAD i ADD 1 STOR i GOTO LBL1 LBL19: Then, certain extensions are permitted including most famously case without fallthrough, one trip do "until", and break, implemented semantically with a go to to a label one past the end of the loop or syntactically with break. A breaking loop is a new structure relative to the three Bohm-Jacopini structures, switch case and one trip do. And it "weakens" the postconditions that must obtain on exit. Most famously, the index of a breaking loop may not be one past the end of what was being processed. > > Ali > > On 24 Nisan, 13:13, "io_x" <a...(a)b.c.invalid> wrote: > > > > > [Xpost to: alt.comp.programming, alt.lang.asm, > > comp.lang.c, comp.lang.c++, comp.programming] > > > the people that speak not good about "goto" > > are uttled wrong; their code bug full etc > > > more distant is your code from goto > > more your code is bug full and incompresible > > > the "goto" is the key word for programming; > > all the remain, other than goto or jmp or jc or jz, > > and the easy cpu layout > > is the wrong way for programming > > > i advise all you > > Good Morning |