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

Re: mathematical models

   From: "Guillermo J. Rozas" <gjr@martigny.ai.mit.edu>
   Date: Fri, 6 Jun 1997 13:51:50 -0400
   In particular, at one point Chris Hanson had to make the choice of
   order more deterministic than necessary, because we ran into the
   following situation:
   The code that chose the order of argument evaluation, partly depended
   (in cases where there was no real preference) on the algorithm itself
   on the version of the compiler used to compile the code.
   This lead to a failure of the binary convergence test (the compiler
   being its own fixed point, with equality being binary equality) which
   took a long time to figure out.

Because the overall number of choices of evaluation orders for all
procedure calls in the compiler is finite, it must be the case that
if the compiler compiles the compiler source code, and the resulting
compiler is used to compile the same compiler source code, and so on,
eventually you must fall into a loop.

My question is, what was the length of the loop?