You did mention only a few files display this type of syntax.  Perhaps
said programmer was shown the door....

On 4/15/05, Mark Johnson <[EMAIL PROTECTED]> wrote:
> Can't this whole concept be considered foolish as if there were 20-30 files
> (as many update programs have) then the programmer would have to use a
> different mental syntax. That would imply that the real code starts around
> column 140.
> ----- Original Message -----
> From: "Ken Wallis" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Thursday, April 14, 2005 11:51 PM
> Subject: RE: [U2] Multiple OPEN statements
> 
> > Mark Johnson wrote:
> >
> > > I just acquired a new client and found an interesting
> > > programming style that
> > > for the life of me I cannot understand why anyone in their
> > > right mind would do such a thing.
> > >
> > > Not on all programs but it seems that for programs that open
> > > less than 4-5
> > > files, the programmer continues the logic in the THEN section
> > > of the open statement. Example:
> > >
> > > OPEN FILE1 TO F.FILE1 THEN
> > >     OPEN FILE2 TO F.FILE2 THEN
> > >         OPEN FILE3 TO F.FILE3 THEN
> > >             EOF=0
> > >             LOOP READNEXT ID ELSE EOF=1 UNTIL EOF DO
> > >             PROCESS, PROCESS, PROCESS
> > >             REPEAT
> > >         END ELSE PRINT "CAN'T OPEN FILE3"
> > >     END ELSE PRINT "CAN'T OPEN FILE2"
> > > END ELSE PRINT "CAN'T OPEN FILE1"
> > > END
> >
> > Yes Mark, this is a new fangled thing that I believe is called 'Structured
> > Programming'.  I suspect it'll never catch on, obviously it's only just
> > reaching your part of the world. ;^)
> >
> > > There could be 200-300 lines between the OPEN for FILE3 and
> > > its error message.
> >
> > Well, that part I don't like, but shit happens I suppose.  A bit like:
> >
> > OPEN FILE1 TO F.FILE1 ELSE GOTO 999
> >
> > where 999 is a long way away.
> >
> > Personally, I'd code the above example as:
> >
> > OPEN FILE1 TO F.FILE1 THEN
> >     OPEN FILE2 TO F.FILE2 THEN
> >         OPEN FILE3 TO F.FILE3 THEN
> >     GOSUB PROCESS_STUFF
> >         END ELSE PRINT "CAN'T OPEN FILE3"
> >     END ELSE PRINT "CAN'T OPEN FILE2"
> > END ELSE PRINT "CAN'T OPEN FILE1"
> >
> > STOP
> >
> > PROCESS_STUFF:
> >     EOF=0
> >     LOOP READNEXT ID ELSE EOF=1 UNTIL EOF DO
> >     PROCESS, PROCESS, PROCESS
> >     REPEAT
> >     RETURN
> >
> > END
> >
> > or even as:
> >
> > GOSUB OPEN_FILES
> > IF SHIT_HAPPENED ELSE
> >     GOSUB PROCESS_STUFF
> > END
> > STOP
> >
> > OPEN_FILES:
> >     SHIT_HAPPENED = ""
> > OPEN FILE1 TO F.FILE1 THEN
> >     OPEN FILE2 TO F.FILE2 THEN
> >             OPEN FILE3 TO F.FILE3 ELSE
> >                 SHIT_HAPPENED = FILE3
> >             END
> >         END ELSE
> >             SHIT_HAPPENED = FILE2
> >         END
> >     END ELSE
> >         SHIT_HAPPENED = FILE1
> >     END
> >     IF SHIT_HAPPENED THEN
> >         PRINT "Can't open ":SHIT_HAPPENED
> >     END
> > RETURN
> >
> > PROCESS_STUFF:
> >     EOF=0
> >     LOOP READNEXT ID ELSE EOF=1 UNTIL EOF DO
> >     PROCESS, PROCESS, PROCESS
> >     REPEAT
> >     RETURN
> > END
> >
> > > Now I know that Pick is pretty loose and forgiving. But what
> > > could be the sanity behind this.
> >
> > You know the funny thing is that programmers who use decent editors don't
> > seem
> > to find the whole indentation thing so challenging. ;^)
> >
> > Cheers,
> >
> > Ken
> > -------
> > u2-users mailing list
> > [email protected]
> > To unsubscribe please visit http://listserver.u2ug.org/
> -------
> u2-users mailing list
> [email protected]
> To unsubscribe please visit http://listserver.u2ug.org/
-------
u2-users mailing list
[email protected]
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to