[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Issue: FIXNUM-NON-PORTABLE, v.5



   Date: Fri, 17 Mar 89 19:53 EST
   From: David A. Moon <Moon@stony-brook.scrc.symbolics.com>

       Date: 16 Mar 89 21:51 PST
       From: masinter.pa@Xerox.COM

       This is my rewrite to capture the 'intent' of the amendment
       at the January X3J13. I say 'intent' because the relation
       between MOST-POSITIVE-FIXNUM (which is an inclusive bound)
       and ARRAY-DIMENSION-LIMIT (which is an exclusive bound) is not
       > but rather (>= MOST-POSITIVE-FIXNUM (1- ARRAY-DIMENSION-LIMIT)).

   No, the amendment was (<= ARRAY-DIMENSION-LIMIT MOST-POSITIVE-FIXNUM),
   and this was not a mistake nor an off-by-one error.  What you've
   put in the proposal here is incorrect, I think.  I think it was
   fully intended that not only every valid array index and every
   array dimension, but also array-dimension-limit itself would be
   a fixnum.  Someone might want to write an arithmetic iteration
   whose upper bound was array-dimension-limit.

I agree with Moon's observations and assessment; this was my understanding
of the amendment.

Pascal-type languages have had no end of grief because iteration counters
take on "invalid" (read "non-fixnum" here and you'll get the idea) values
at the end of the last iteration.

--Guy