Lua - Loops


There may be a situation, when you need to execute a block of code several number of times. In general, statements are executed sequentially: The first statement in a function is executed first, followed by the second, and so on.

Programming languages provide various control structures that allow for more complicated execution paths.

A loop statement allows us to execute a statement or group of statements multiple times and following is the general form of a loop statement in most of the programming languages:

Loop Architecture

Lua programming language provides the following types of loop to handle looping requirements. Click the following links to check their detail.

Loop TypeDescription
while loopRepeats a statement or group of statements while a given condition is true. It tests the condition before executing the loop body.
for loopExecute a sequence of statements multiple times and abbreviates the code that manages the loop variable.
repeat...until loopThis repeats the operation of group of statements till the until condition is met.
nested loopsYou can use one or more loop inside any another while, for or do..while loop.

Loop Control Statement:

Loop control statement change execution from its normal sequence. When execution leaves a scope, all automatic objects that were created in that scope are destroyed.

Lua supports the following control statements. Click the following links to check their detail.

Control StatementDescription
break statementTerminates the loop and transfers execution to the statement immediately following the loop or switch.

The Infinite Loop:

A loop becomes infinite loop if a condition never becomes false. The while loop is often used for this purpose. Since we directly give true for the condition, it keeps executing for ever. We can use break statement to break this loop.

while( true )
   print("This loop will run forever.")