Subject RE: [IB-Architect] enhancement to procedure/trigger language
Author Leyne, Sean
Jim,

IMHO, the label/leave seems to be nothing but a fancy way of performing
a "goto".

That's the net effect of the label/leave approach suggested.

begin
level 1;
for select ....
do begin
if ...
leave 1;
level 2;
for select ...
do begin
if ...
leave 2;
else if ...
leave 1;
else ...
end;
end;
end;

actually would work out to be equivalent to:

begin
for select ....
do begin
if ...
goto finish;
for select ...
do begin
if ...
goto endloop;
else if ...
goto finish;
else ...
end;

ENDLOOP:

end;

FINISH:

end;

<sarcastic>
Heck, why don't we implement "goto", if that's the effect people want?
</sarcastic>

The 'break' statement, while requiring a couple of extra statements to
loop out of the additional level (as required), eliminates the ugliness
of the "goto" concept.


Sean