[fpc-pascal] The reason why linus torvalds hate-pascal
Andreas Berger
Andreas at TheBergerClan.org
Fri Apr 18 14:27:24 CEST 2008
>> for a := 0 to x do
>> for b := 0 to y do
>> for c := 0 to z do
>> if (...) then
>> begin
>> // Do something and then exit all loops
>> exit; // Or maybe: goto OutSideOfLoops;
>> end;
>>
>> In Pascal I can't change the 'a' and 'b' values to force the end of
>> the loop. So what other GOOD option do I have but to use exit or goto?
>
> Use a while or repeat loop. The whole point of a for-loop is exactly
> to have the compiler ensure (to the best of its abilities) that you do
> not accidentally modify the loop variables.
>
Well, if you think an exit is ugly, image changing this code into while
loops. May as well use assembly.
OT: The only things I dislike about pascal is that the value of a
variable at the end of a for loop is undefined. It should remain at the
value it had when exiting the loop.
Andreas
More information about the fpc-pascal
mailing list