Control flow statements direct the flow of execution from one block to another:
- if .. elif .. else. Choose which block to execute based on evaluating one or more conditional expressions.
- pattern matching. Choose which block to execute based on which pattern first matches some value
- while or loop. Repeatedly execute some block while certain conditional expressions are true.
- each iteration. Repeatedly perform some block for each every value in some iterated sequence.
- exception handling. Support different control flows for successful processing vs. thrown exceptions.