In article <1990Jun4.212226.18389@esegue.segue.boston.ma.us> larus@spool.cs.wisc.edu writes:>... SOme programmers are willing to trade off the>semantics of the language (the effect of "bad" optimizations) for faster>programs. By arguing that compilers should only perform conservative>optimization, you are claiming that the sequential semantics of FORTRAN (fill>in your favorite or least favorite language) are suitable for parallel>execution. Think carefully before you argue this position.>

Ok. I'll bite. But I'll rephrase it slightly. Compilers for languages
that are designed for serial execution should only perform conservative
optimizations for parallel platforms. The fact that the programmer may choose
to bypass this is irrelevant. That is what programmers are for :).

Consider what happens if we don't choose this course. Unsafe optimization =>
unsafe results. Definately not good. Far from being an argument for the
suitablility of FORTRAN (or any other inherently sequential language) I
see this as an argument against such suitablity. If we design languages
with true parallelism in mind then what you are referring to as unsafe
optimizations will disappear, along with the need for sequential equivalence.
One can not have sequential equivalence in a language which can not be
expressed sequentially.