basic_loop_statement ::=
 [<< label_name >>] LOOP statement [statement]...
END LOOP [label_name];
while_loop_statement ::=
 [<< label_name >>] WHILE boolean_expression
LOOP statement [statement]...
END LOOP [label_name];
for_loop_statement ::=
 [<< label_name >>] FOR index_name IN
 [REVERSE] lower_bound .. upper_bound
LOOP statement [statement]...
END LOOP [label_name];