[mercury-users] tabling

Fergus Henderson fjh at cs.mu.OZ.AU
Thu Nov 30 12:07:24 AEDT 2000


The topic of discussion in this thread seems to have shifted into
implementation details, so I've replied to the article quoted below on
the mercury-developers mailing list, rather than replying here on
mercury-users.  (My reply will appear on the list archive at
<http://www.cs.mu.oz.au/mercury/mailing-lists/mercury-developers/list.html>
within 12 hours.)

On 30-Nov-2000, Zoltan Somogyi <zs at cs.mu.OZ.AU> wrote:
> 
> Any such garbage collector would need to be aware of the tables, because they
> are roots, and may be the only root pointing to a still live data structure.
> The relevant tabling data structure is a hash table; when an address changes,
> its hash value does too. Requiring the collector to preserve the validity of
> the hash table by rehashing its elements does not seem too onerous a burden.
...
> > only the object(T) type and the tabling routines in the runtime library
> > need to know about it, not the compiler front-end.
> 
> Actually, with the definitions in your mail, the tabling routines in the
> runtime do *not* need to know about object(T); they can be used unchanged.
> In fact, any approach that requires the runtime to know about object(T)
> as a special type would impose distributed fat.
> 
> Your approach would seem to be the best solution to MC's current problem.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
                                    |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-users mailing list
post:  mercury-users at cs.mu.oz.au
administrative address: owner-mercury-users at cs.mu.oz.au
unsubscribe: Address: mercury-users-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-users-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the users mailing list