inside the GHC code generator
Simon Peyton-Jones
simonpj at microsoft.com
Fri Feb 24 07:22:58 EST 2006
| The closest thing I've seen to a solution is the technique used in
Urban
| Boquist's thesis, which is to put a static table in the executable
with
| information about register and stack usage indexed by procedure return
| point, and use that to unwind the stack and find roots.
Every accurate garbage collector (including GHC's) uses a technique like
this, but the solution is invariably tightly-coupled to the garbage
collector, compiler and run-time system.
A major feature of C-- is that it squarely addresses this problem in a
*reusable* way.
Simon
More information about the Glasgow-haskell-users
mailing list