× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: RE: %EOF - more on GOTO
  • From: Buzz Fenner <nick_exxon@xxxxxxxxxxx>
  • Date: Sat, 19 Jun 1999 05:35:31 PDT

John,

I guess I'm having a relapse into my days as a cobol programmer.  Back then, 
our code structure was to have a main procedure with branching to other 
modules; but control would always return to the main proc, which when 
finished executing, ended the program.  With GOTO's, you more or less erase 
your tracks.  In some cases where one is doing maintenance programming, it 
can turn into a big GOTCHA.  I don't like that opcode at all, but if I told 
you that I never used one in my life, I'd be lying through my teeth.  Nuff 
said!

Buzz


>From: "John Taylor" <John.Taylor@telusplanet.net>
>Reply-To: RPG400-L@midrange.com
>To: <RPG400-L@midrange.com>
>Subject: RE: %EOF - more on GOTO
>Date: Fri, 18 Jun 1999 22:20:40 -0600
>
>Hi Buzz,
>
>
>Yes, I would agree that it is a transfer of control. I'm not sure what
>you're getting at though. Could you elaborate?
>
>
>John
>
> > -----Original Message-----
> > From: owner-rpg400-l@midrange.com [mailto:owner-rpg400-l@midrange.com]On
> > Behalf Of Buzz Fenner
> > Sent: Friday, June 18, 1999 8:31 PM
> > To: RPG400-L@midrange.com
> > Subject: RE: %EOF - more on GOTO
> >
> >
> > John,
> >
> > I see the "elegance"(?) of your argument.  But, still isn't it a
> > transfer of
> > control?
> >
> > Buzz
> >
> >
> > >From: "John Taylor" <john.taylor@telusplanet.net>
> > >Reply-To: RPG400-L@midrange.com
> > >To: <RPG400-L@midrange.com>
> > >Subject: RE: %EOF - more on GOTO
> > >Date: Fri, 18 Jun 1999 16:38:50 -0600
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: owner-rpg400-l@midrange.com
> > [mailto:owner-rpg400-l@midrange.com]On
> > > > Behalf Of bellis@ORIENTAL.COM
> > > > Sent: Friday, June 18, 1999 3:01 PM
> > > > To: RPG400-L@midrange.com
> > > > Subject: RE: %EOF
> > > >
> > >
> > >
> > ><snipped>
> > >
> > > > By the way, you should never have to use a GOTO in an RPG program 
>!!!
> > >
> > >No, you never really HAVE to. However, when used responsibly, a
> > GOTO can be
> > >quite usefull. Take for example a standard error checking
> > subroutine such
> > >as
> > >the following:
> > >
> > >SR ChkForErr       BegSR
> > >
> > >   * Initialize routine
> > >C                  Eval    ErrorID = *Blanks
> > >
> > >   * Do some testing & branch to error section when required
> > >C                  If      ( SomeCondition <> Valid )
> > >C                  Eval    ErrorID = "SomeErrorID"
> > >C                  Goto    ErrSection
> > >C                  Endif
> > >
> > >C                  If      ( SomeOtherCondition <> Valid )
> > >C                  Eval    ErrorID = "SomeOtherErrorID"
> > >C                  Goto    ErrSection
> > >C                  Endif
> > >
> > >   * Add a whole bunch of other tests here
> > >
> > >
> > >   * Error Section
> > >C  ErrSection      Tag
> > >C                  If      ( ErrorID <> *Blanks )
> > >C                  Eval    DspErrInd = *On
> > >   *    <add additional common error handling code here)
> > >C                  Endif
> > >
> > >SR                 EndSR
> > >
> > >
> > >Sure, you could code this without using a GOTO, but it would mean 
>adding
> > >more code that is just not necessary. The routine only exits at
> > one point,
> > >and the logic does not jump around from place to place.
> > >
> > >The bottom line, for me, is that the GOTO is not evil. The programmer 
>who
> > >uses it irresponsibly is. And a programmer who abuses the GOTO
> > statement is
> > >also likely to abuse any other op-code that he's learned. How many 
>times
> > >have you seen code that moves *BLANKS into a decimal field?
> > >
> > >
> > >John Taylor
> > >
> > >* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
>*
> > >* This is the RPG/400 Discussion Mailing List!  To submit a new         
>*
> > >* message, send your mail to "RPG400-L@midrange.com".  To unsubscribe   
>*
> > >* from this list send email to MAJORDOMO@midrange.com and specify       
>*
> > >* 'unsubscribe RPG400-L' in the body of your message.  Questions should 
>*
> > >* be directed to the list owner / operator: david@midrange.com          
>*
> > >* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
>*
> >
> >
> >
> >
> > _______________________________________________________________
> > Get Free Email and Do More On The Web. Visit http://www.msn.com
> > * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
>*
> > * This is the RPG/400 Discussion Mailing List!  To submit a new         
>*
> > * message, send your mail to "RPG400-L@midrange.com".  To unsubscribe   
>*
> > * from this list send email to MAJORDOMO@midrange.com and specify       
>*
> > * 'unsubscribe RPG400-L' in the body of your message.  Questions should 
>*
> > * be directed to the list owner / operator: david@midrange.com          
>*
> > * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
>*
> >
>
>* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
>* This is the RPG/400 Discussion Mailing List!  To submit a new         *
>* message, send your mail to "RPG400-L@midrange.com".  To unsubscribe   *
>* from this list send email to MAJORDOMO@midrange.com and specify       *
>* 'unsubscribe RPG400-L' in the body of your message.  Questions should *
>* be directed to the list owner / operator: david@midrange.com          *
>* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *


_______________________________________________________________
Get Free Email and Do More On The Web. Visit http://www.msn.com
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* This is the RPG/400 Discussion Mailing List!  To submit a new         *
* message, send your mail to "RPG400-L@midrange.com".  To unsubscribe   *
* from this list send email to MAJORDOMO@midrange.com and specify       *
* 'unsubscribe RPG400-L' in the body of your message.  Questions should *
* be directed to the list owner / operator: david@midrange.com          *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.