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

*To*: ramsdell@linus.mitre.org, gjr@martigny.ai.mit.edu*Subject*: Re: mathematical models*From*: Guy Steele - Sun Microsystems Labs <gls@livia.East.Sun.COM>*Date*: Fri, 6 Jun 1997 14:29:02 -0400 (EDT)*Cc*: rrrs-authors@martigny.ai.mit.edu, hbaker@netcom.com, jgm@cs.cornell.edu, shriram@cs.rice.edu, ramsdell@linus.mitre.org*Reply-To*: Guy Steele - Sun Microsystems Labs <gls@livia.East.Sun.COM>

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? --Guy

**Follow-Ups**:**Re: mathematical models***From:*Guillermo J. Rozas <gjr@martigny.ai.mit.edu>

- Prev by Date:
**Re: mathematical models** - Next by Date:
**Re: mathematical models** - Prev by thread:
**Re: mathematical models** - Next by thread:
**Re: mathematical models** - Index(es):