develooper Front page | perl.perl6.internals | Postings from July 2002

[COMMIT] Stack rework

From:
Melvin Smith
Date:
July 3, 2002 22:07
Subject:
[COMMIT] Stack rework
Message ID:
5.1.0.14.2.20020704005554.00af2a98@pop.mindspring.com
Heads up for internal hackers,

General stacks and control stacks are no longer circular. They are now
terminated at both ends with NULL pointers.

A "stack" now points to the top of the stack, not the base.

This simplified stack handling as well as the GC tracing, but
in one case, stack_entry() with a negative offset, results in
a linear walk. Is this even used?

The other benefit is we can do stack trees, which may make COW
and continuations less expensive. We can do COW per-chunk, rather
than per-stack. (currently unfinished)

We may need a "stack" object that will allow better random access
to the stack, rather than passing around the base or top.

-Melvin





nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About