Estrutura de Iteração
While
O while é similar as linguagens já conhecidas, porém também sem a necessidade dos parentênses para a expressão a ser verificada:
while boolExpr1 {
}
Exemplo:
while x > 0 {
x -= 1;
}
For in
O for é similar ao for do Matlab, Scala por receber um range, mas na linguagem PIG a estrutura é a seguinte:
for var in range {
}
Exemplo:
def a : vec2 = [2.0,3.0];
for x in a {
print(x); # 2.03.0
}
for x in [1,2,3,4]{
print(x); # 1234
}
for i in 1..5{
print(toString(2*i) + " "); # 2 4 6 8 10
}
Laços paralelos
Laços foreach especiais sobre matrizes, voltados para a paralelização de execução.
Exemplo:
def m : mat4;
for i,j // [0,1,2,3], [0,1,2,3]{
m[i,j] = 1.0; # Escreve 1.0 paralelamente em todas as posicoes de m.
}