It isn't really necessary to specify the evaluation time of the function in nearly all cases. That is, it sounds more vague than it really is to say that the evaluation time is unspecified, since there is no way anyone could ever tell when the evaluation is done. The only place where evaluation order might be visible is with ".", since the -setter variable might possibly not be a constant. Quite reasonably, L-R evaluation is specified here.