[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
Re: Clause 10, Expression Evaluation
Michel Hack (1-914-784-7648) <hack@xxxxxxxxxxxxxx> wrote:
I'm less familiar with Algol 68 than with Algol 60, but I wonder how
the latter's call-by-name would fit with the proposed attributes that
are based on static blocks.
Badly?
The issue that bothers me is that many languages will be in a position to
honour 754R in all its *individual* operations, but would be prevented
from claiming conformance because of a mismatch in global properties.
I agree. And reproducibility and exception handling are global
properties, however you cut them.
To take just one example: required WidenTo control. The rationale for
this is that the C language flip-flopped on the issue.
`Flip-flop' implies a degree of predictability that C has abandoned.
Annex F does not specify what FLT_EVAL_METHOD is set to, and a value
of -1 is therefore allowed (i.e. indeterminate). And, yes, that means
that every time an expression is evaluated, the system may choose
the method afresh.
That isn't a joke, either - I have used systems where it was the
case. If you have an option between a serial FP unit with all
precisions and a SIMD one with only some, it isn't unreasonable to
use different choices according to the length of an array. Been
there, had to explain that to users :-)
Regards,
Nick Maclaren,
University of Cambridge Computing Service,
New Museums Site, Pembroke Street, Cambridge CB2 3QH, England.
Email: nmm1@xxxxxxxxx
Tel.: +44 1223 334761 Fax: +44 1223 334679