Flow ControlΒΆ
You can find several ways to control program execution flow in BL, the simplest one is if statement. We use if to check the value of should_print boolean variable and if the value is true we continue with execution to the following block. The else statement is optional and will be executed in case should_print was false.
Sometimes we want to execute part of program multiple times. In such case use of the loop statement is the best choise.
main :: fn () s32 {
// Declare bool variable and set it to true.
should_print := true;
// Use of the if statement to create two execution branches.
if should_print {
// This will be called when 'should_print' is true.
print("This will be printed!\n");
} else {
// Optional else block.
}
// We need some counter to count loop iterations.
i := 0;
loop { // Execute block in loop.
// Compare value of i to 10 and break the loop when this
// condition is true. We stay in this loop forever without
// break call.
if i == 10 { break; }
print("Hello!\n");
// Increase value of i by one.
i += 1;
}
// Check break condition directly by loop statement.
j := 0;
loop j < 10 { // Continue looping when j is less than 10.
print("j = %\n", j); // Use % delimiter to print value of j.
j += 1;
}
// And finally...
loop k := 0; k < 10; k += 1 {
print("k = %\n", k);
}
return 0;
}