Skip to content

Control Flow

Jacopo De Luca edited this page Feb 15, 2021 · 10 revisions

Argon provides a variety of control flow statements. These include C-style for, for-in and loop loops to perform task multiple times, if and switch statements to execute different branches of code based on certain conditions, and statements like break and continue to transfer the flow of execution to another point in the code.

For-In Loops

You use the for-in loop to iterate over a sequence, such as items in an array or set.

This example uses a for-in loop to iterate over the items in an array:

let NOBLE_GAS = ["Helium", "Neon", "Argon", "Krypton", "Xenon"]

var gas

for gas in NOBLE_GAS {
    println(gas)
}

# Helium
# Neon
# Argon
# Krypton
# Xenon

Loop

A loop loops performs a set of statement until a condition becomes false, or until an explicit break statement not being reached (loop without condition). These kind of loops are best used when number of iteration is not known before the first iteration begins.

Conditional Loop

A loop loop stats by evalutating a single condition, if the condition is true, a set of statements is repeated until the condition becomes false.

loop condition {
    statements
}

var i = 0

loop i < 5 {
    println(i++)
}

Infinite Loop

A loop loop without a condition is a infinite loop, you can exit from infinite loop with break keyword.

var i = 0

loop {
    println(i++)
    if i < 5 {
        break
    }
}

Conditional Statements

It is often useful to execute different pieces of code based on certain conditions. You might want to run an extra piece of code when an error occurs, or to display a message when a value is reached. To do this, you need to use a condition. Argon provides two ways to add conditional branches to your code, the if statement and the switch statement. Typically, you use the if to evalutate simple condition with few possibile outcomes, instead switch statement is better suited to more complex condition with multiple possible permutations.

If

In its simplets form, the if statement has a single condition. It executes the body statements only if the condition is true.

var pm10_threshold = 51

if pm10_threshold > 50 { println("exceeded the PM10 daily limit") } 
Clone this wiki locally