Control-flow Chacteristics
ZPL has “sequential” control flow, i.e. under most circumstances statements execute one at a time to completion
fact := 1;
for i = 2 to n do fact *= i; end; -- n!
Consider the affect of replacing a scalar with an array in control predicates
Fact := 1;
for I := 2 to N do Fact *= i; end; -- N!
N = 3 1 4 1 5 implies Fact = 6 1 24 1 120
Control is said to shatter