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

Issue: ADJUST-ARRAY-NOT-ADJUSTABLE (Version 6)



   Date: Wed, 15 Mar 89 23:39:49 PST
   From: Jon L White <jonl@lucid.com>

   re: I conclude that the strict interpretation may be preferred, but not for the
       reasons Jonl has advanced!  The liberal interpretation does *not* prevent
       compilers for stock hardware from producing good code, and therefore the
       code example does not support his claim to the contrary.


   Guy, I fear that you have made an error of logic in analyzing my example.
   You use the "strict" interpretation to conclude that the example is
   incorrect code (as it should be!); but the whole point of the example is 
   to show that under the "liberal" interpretation, it's correctness depends 
   on the implementation rather than on a implementation-independent definition.

   If you don't see this, then perhaps we should talk about it "off line".

I respectfully disagree with your assessment; I believe that you have
erred in analyzing my analysis.  Specifically, I do *not* conclude
that the example is incorrect code.  Let me quote further from my
message of Feb 28:

	I argue that the program is correct under both interpretations....

	Under the strict interpretation implementation (A) is incorrect by
	definition.  Under the liberal interpretation implementation (A) is
	correct, and accomplishes a useful purpose. ...

According to my analysis, the correctness of the code does not depend
on the choice of strict or liberal interpretation; rather, the
correctness of implementation (A) depends on the choice of interpretation.

I conclude: (1) Under the strict interpretation only some
implementations are correct, but under the liberal interpretation many
more are correct.  (2) You can get good code on stock hardware
regardless of the choice of interpretation.

Therefore unless some other argument can be advanced for the strict
interpretation, the liberal interpretation is to be preferred because it
invalidates fewer implementation strategies.

So there you have a concise summary of my argument that may make it
easier for you to find the hole in it (if any).

--Guy