From: kilgallen@eisner.decus.org (Larry Kilgallen)
Subject: Re: loop step function
Date: 1997/01/25
Date: 1997-01-25T00:00:00+00:00 [thread overview]
Message-ID: <1997Jan24.192209.1@eisner> (raw)
In-Reply-To: 32E93C0B.36A@cloud9.net
In article <32E93C0B.36A@cloud9.net>, Paul Van Bellinghen <pvanbell@cloud9.net> writes:
> I'm fairly new to ADA. I have coded in PASCAL, FORTRAN, C, and assembly
> and have found ADA to be similar to PASCAL but with stronger type
> checking and with better organization and data hiding. Anyway, there
> seems to be an obvious omission in the ADA language. The FOR loop does
> not have a "STEP" option. In order to perform a loop function using a
> variable's range of values but in steps greater than the variable
> kernel, you seem to have to use a WHILE loop with the variable
> incremented within the loop by the step size. Is there a more elegant
> way of doing this?
In order to shed the newcomer image, you have to capitalize it as Ada
with this crowd. Pretty silly for a language which is case-insensitive,
but everything else is much more logical.
As regards FOR loops, you could say:
for BY_ONE from 1 to 20 loop
declare
USEFUL_VALUE : INTEGER := BY_ONE*2;
begin
my_procedure ( USEFUL_VALUE );
end;
end loop;
Whether that is "elegant" is certainly debatable, but it is "flexible"
in that:
USEFUL_VALUE : INTEGER := BY_ONE*2;
could be replaced with:
USEFUL_VALUE : INTEGER := (BY_ONE**2)/13;
Larry Kilgallen
The above statements represent my "gut feel" and have not been
authorized by any compiler.
next prev parent reply other threads:[~1997-01-25 0:00 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
1997-01-24 0:00 loop step function Paul Van Bellinghen
1997-01-25 0:00 ` Geert Bosch
1997-01-25 0:00 ` Matthew Heaney
1997-01-27 0:00 ` johnherro
1997-01-27 0:00 ` Michael Feldman
1997-01-25 0:00 ` Larry Kilgallen [this message]
1997-01-29 0:00 ` Ted Dennison
1997-01-30 0:00 ` Robert Dewar
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox