The point is, however, (IMHO), that all the words about evaluating
things and what order statements are executing in is to provide the
semantics, not specify how a processor must generate code.
I like to think of the model of a "computer (in the old sense)--i.e.,
a person) doing the computation. How would one enforce not allowing
out of order execution? It's all silly as we know; this has been
done for years and will continue to be done (I hope). Think of out-
of-order execution of machine instructions or parallel processing.
This does not correspond to the "rules" of Fortran, even without
"optimization".
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|