[comp.arch] Lazy Store/Reload

hankd@pur-ee.UUCP (Hank Dietz) (10/08/88)

In article <512@quintus.UUCP>, ok@quintus.uucp (Richard A. O'Keefe) writes:
> In article <9410@pur-ee.UUCP> hankd@pur-ee.UUCP (Hank Dietz) writes:
> >Pertaining to my posting about lazy store/reload of register frames:
> >
> Wasn't there an MIT paper with a title something like
> 	"Lazy Scoping -- the Dream of a Lifetime"
> which had to do with lazy register saves and restores?


The paper you refer to is: G. L. Steele Jr. and G. J. Sussman, "The Dream of
a Lifetime: A Lazy Variable Extent Mechanism," from SIGPLAN (1985).  It does
indeed discuss lazy register store/reload, but it does so in the context of
a Lisp environment, rather than in terms of a general register set array.
Although it is heavily biased toward Lisp structures, the concepts are
pretty-much the same, and it's quite an interesting paper.

I would also go so far as to say that if you liked that, you'll love the
paper that Chi and I have at Supercomputing '88:  Henry Dietz and Chi-Hung
Chi, "CRegs: A New Kind of Memory for Referencing Arrays and Pointers,"
which not only supports lazy operations, but significantly extends the
benefits normally associated with registers and cache.

							-hankd

PS: Note that I never claimed to have invented lazy store/reload...  I simply
    said that I led a panel discussion at HICSS where the application to
    register windowing came up.  Fundamentally, lazy ops are a very old idea.