× 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: DOW vs DOU
  • From: Brian Johnson <brian@xxxxxxxxxxxxxxx>
  • Date: Fri, 30 May 97 12:12:00 -0500
  • >Received: from Connect2 Message Router by helps.helpsystems.com via Connect2-UUCP v1.10; Fri, 30 May 97 12:14:42 -0500
  • Organization: HELP/Systems


 ----------
From:  Rick Baird
Sent:  Thu, May 29, 1997 20:58 PM
Subject:  Re: DOW vs DOU


Since were on the subject, I would like some opinions on a coding
technique that I've been using for several years now.  I use the LEAVE
and ITER opcodes extensively as a sortof GOTO replacement (ooh, maybe

...(cut)...

Sort of GOTO?  ITER and LEAVE are *exactly* GOTO's, crutches for folks   
who don't *get* structured programming.  Stop using them!  Learn how to   
write structured programs!  Take a class!

Well, sorry, but that's my opinion.  Now that I've got that off my chest,   
here's an approach that avoids GOTO, ITER and LEAVE:

C       F1DISP     BEGSR
C                  EXSR  F1INZ             (any pre-screen processing)
C                  EXFMT FMT1

C       *INKC      DOWEQ *OFF              (leave loop if F3 or F12 is
C       *INKL      ANDEQ *OFF                pressed)

C                  SELEC
C       *INKD      WHEQ  *ON
C                  EXSR  F1PRMT            (prompt/lookup inquiry calls)

C                  OTHER
C                  EXSR  F1EDIT            (input field editing)
C       $ERROR     IFEQ  *OFF
C                  EXSR  F1UPDT            (file update)
C                  EXSR  F1INZ             (any pre-screen processing)
C                  ENDIF
C                  ENDSL

C                  EXFMT FMT1
C                  ENDDO

C                  ENDSR

and the edit routine:

C       F1EDIT     BEGSR

C                  MOVE  *OFF      $ERROR

C                  IF (some error condition)
C                  MOVE  *ON       $ERROR
C                  ENDIF

C       $ERROR     IFEQ  *OFF
C                  IF (some error condition)
C                  MOVE  *ON       $ERROR
C                  ENDIF
C                  ENDIF


C       $ERROR     IFEQ  *OFF
C                  IF (some error condition)
C                  MOVE  *ON       $ERROR
C                  ENDIF
C                  ENDIF

etc....

C                  ENDSR


* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* This is the Midrange System Mailing List!  To submit a new message,   *
* send your mail to "MIDRANGE-L@midrange.com".  To unsubscribe from     *
* this list send email to MAJORDOMO@midrange.com and specify            *
* 'unsubscribe MIDRANGE-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-Ups:

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.