Looping statement structure:
 [STATEMENT]     repeat block: statements
 [STATEMENT]     that will be executed
 [STATEMENT]     based on the selector state

Looping statement is a statement that has two components: Selector statement types:
Looping Statement Composition
Say we have a dialer program, and a ring function that tries to call the other side:
phonenum '+999-99-000000000'
isringing ~
  rangok ring phonenum
  isringing not rangok
ring phonenum:
    ! Here comes the code that tries to ring
    ! the number on the other side of the line.
    ! if successful return TRUE, otherwise FALSE.
The line 'isringing ~', is the looping line, and isringing, is the selector statement. The tilde symbol '~', is Tyl code for looping, and it comes right after the selector statement.
The lines after the looping line are the repeat block. The selector decides if to repeat the execution of the repeat block.
The caret symbol is the statement end symbol and marks the end of the repeat block.

The repeat block can be folded to one statement:
isringing ~
isringing not ring phonenum
If there is only one statement in the repeat block, it is possible to write the repeat statement right after the selector:
isringing ~ isringing not ring phonenum
The line 'isringing ~ isringing not ring phonenum', is called a one line loop, and is good for short looping statements.