Leo~

On Wed, 24 Nov 2004 04:55:24 +0100, Leopold Toetsch <[EMAIL PROTECTED]> wrote:
> Matt Fowles <[EMAIL PROTECTED]> wrote:
> 
> > Won't your approach put every one of those things in its own register?
> 
> I've clearly stated that lexicals aka non-volatiles have distinct
> registers.

Thus for these large subs, won't this be a large overhead?

> > ...  However, if a continuation restores registers to the data they
> > had when the continuation was taken, then all of the registers will
> > contain the things that exactly as the original allocator expects
> > them.
> 
> Yes. We had that scheme until the indirect register frame addressing.
> It was:
> 
>    savetop
>    invokecc
>    restoretop
> 
> It was too slow - remember a factor of 5!

Yes, but that is because we COPIED the data for every invocation. 
With what I am proposing we would only need to copy the data when
invoking a full continuation (so that the full continuation can be
invoked again later without disturbing its registers).  Invoking
return continuations would be exactly the same as it is now.  Thus you
only pay the cost if you are trying to do funny things with
continuations.

Matt
-- 
"Computer Science is merely the post-Turing Decline of Formal Systems Theory."
-???

Reply via email to