Loops
We also express loops that compute sums (summate) and products (product).
The syntax of these loops begins by declaring an inclusive lower bound and
an exclusive upper bound. For example, the factorial of n is not
product i from 1 to n: i but rather product i from 1 to n+1: i.
This convention takes some getting used to but it makes it easy to deal
with arrays. For example, if a is an array of numbers then their sum is
summate i from 0 to size(a): a[i].