The keyword local is the C2 version of C's static for local variables. I did not want to use the
keyword global, because that means something else. So C2's local variables have a function scope,
but do persist between function calls (so identical to C's static local variables). I agree that local does not
really convey that meaning, but I couldn't think of a better alternative..