foreach
Nick Treleaven via Digitalmars-d
digitalmars-d at puremagic.com
Sat Jun 14 05:03:54 PDT 2014
On 14/06/2014 11:18, Jacob Carlborg wrote:
>> On the contrary, using while() here is unnatural because while() expects
>> a loop condition, but since an infinite loop doesn't have one, you have
>> to artificially invent a constant value to stick into the loop condition
>> in order to satisfy the syntax of the while-loop. I find this to be
>> quite unnatural.
>
> I don't agree. How many other statements allow their parts to be
> optional. "while" does not, "if" does not.
I'd like while() to mean while(true). The brackets are still there to
avoid confusing simple parser tools. The advantage besides keystrokes
and noise is to unify while(true) and while(1) styles. The latter is
shorter but slightly harder to understand for a beginner.
I prefer using 'while' to 'for' as an infinite loop because while is a
simpler construct (lower level) than for. for is too high level for this
purpose. I think it's easier for beginners to analyse while(true) than
to imagine what each optional part of 'for' means. for with no arguments
devolves into a while loop.
More information about the Digitalmars-d
mailing list