[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: evaluation order rule
As per Jinx's reply:
[paraphrase]: Breaking a rule is only illegal if someone sees you do it.
Thanks. I had hoped I was just being too literal... I get nervous when I
hear ``thou shalt not''. In this case it seems no big deal, but I worry about
restrictions that may be too strong.
Take for example the Anti-Aliasing Rule in Gifford & Lucassen's FX language:
it is intended to forbid undetected interferrence but it is worded to forbid
run-time detection&serialization of potentially interferring concurrent
threads (it forces them to signal an error instead). Thus, stating a design
desiderata as a restriction without carefully stating the principle behind it,
although expedient, can be a precarious business. [I believe the FX designers
intend to fix this deficiency in the next version of their language.]
The evaluation rule as originally stated was careful to explain the lack of
serializing facilities in Scheme as the problem but it did so as a
rationalization for forbidding non-interleaving. I had hoped that merely
adding the adjective DETECTABLE would be judicious and non-offensive.
Whatever. Guess I just don't like rules.