VOTE

Rick Stevens rstevens at vitalstream.com
Tue Dec 26 20:10:30 UTC 2006


On Tue, 2006-12-26 at 14:07 -0500, Dmitriy Kropivnitskiy wrote:
> Terry Polzin wrote:
> > goto was also used in COBOL before "perform x thru y" became the common way of 
> > coding the procedure division.  I think it's also used in fortran as well.
> 
> There is actually a goto in many languages, including C, C++ and I think Java, but if you use goto in your C program, your colleagues are liable to 
> break your arms and knee-caps, knock out your teeth and poke out your eyes with a corkscrew and actually get away with it on grounds of justifiable 
> self defence.

Well, if you read Kernighan & Ritchey's original "The C Programming
Language" book, the "goto" was only put in because C doesn't provide a
multi-level break statement.  The only way out of that situation short
of lots and lots of sentinel values is a goto.  Of course, they also
state that if you are more than four levels of indentation deep, you
probably should think about splitting out a function or rethinking your
logic.

There are times where a "goto" is appropriate, but one should try to
minimize its use--true in almost any procedural language.  If you want
to abuse the "goto", write in BASIC.  :-)

----------------------------------------------------------------------
- Rick Stevens, Senior Systems Engineer     rstevens at vitalstream.com -
- VitalStream, Inc.                       http://www.vitalstream.com -
-                                                                    -
-       "I'd explain it to you, but your brain might explode."       -
----------------------------------------------------------------------




More information about the users mailing list