|
Use of that ITER may cause you to rewrite the way you do loops. Not
necessarily a bad thing, just something to keep in mind. For example, the
following is an infinite loop:
read myfile;
Dow not %eof(myfile);
if myfield='IDoNotCare';
iter;
EndIf;
// process normally
read myfile;
EndDo;
This might become:
Dou %eof(myfile);
read myfile;
select;
When %eof(myfile);
leave;
When myfield='IDoNotCare';
iter;
EndSl;
// process normal
EndDo;
Rob Berendt
--
"All creatures will make merry... under pain of death."
-Ming the Merciless (Flash Gordon)
Hans Boldt <boldt@xxxxxxxxxx>
Sent by: rpg400-l-bounces@xxxxxxxxxxxx
01/15/2004 09:26 AM
Please respond to
RPG programming on the AS400 / iSeries <rpg400-l@xxxxxxxxxxxx>
To
rpg400-l@xxxxxxxxxxxx
cc
Fax to
Subject
Re: *INZSR - I still love you!!!
Anton Gombkötö wrote:
> ...
> (And GOTO was forbidden (and i mean it! A guy wrote a program to check
> the source codes for that and for ITER, LEAVE, ...!) long years ago...
> ;-)
>
Oh dear oh dear oh dear!
Why oh why would you not want to use such nice opcodes as ITER and
LEAVE? These are perfectly valid ways to repeat or exit a loop, and
should not be tossed into the same bucket as GOTO. Lots of languages
have similiar constructs: C, Java, Python and Ruby have "break" and
"continue", Perl has "last" and "next" (just to name a few other
commonly used languages). Heck, even many implementation of Pascal, that
paragon of structured programming virtue, have "break" (or "exit") and
"continue"!
I think the only people who object to ITER and LEAVE in RPG are those
who try too hard to follow the "rules" of structured programming.
Structured programming is fine, but it still shouldn't be allowed to get
in the way of readable programs. (Just my humble opinion.)
Cheers! Hans
_______________________________________________
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.