[m-dev.] for review: tuples [1]
Fergus Henderson
fjh at cs.mu.OZ.AU
Thu Aug 3 15:06:46 AEST 2000
On 03-Aug-2000, Peter Schachte <schachte at cs.mu.OZ.AU> wrote:
> On Thu, Aug 03, 2000 at 09:34:46AM +1000, Simon Taylor wrote:
> > It doesn't work well with polymorphic predicates because
> > the structures would need to be un-inlined before passing
> > them to a predicate such as io__write or std_util__deconstruct.
>
> I don't think un-inlining is a problem: you just take a pointer to the
> middle of the structure.
Doing that is problematic for garbage collection.
Many (most?) garbage collectors don't allow that.
For those that do (e.g. the Boehm collector with
`-DALLOW_INTERIOR_POINTERS'), it often comes at a
significant performance penalty. I don't think we
can rely on that being possible, because it would
restrict the implementation too much.
--
Fergus Henderson <fjh at cs.mu.oz.au> | "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh> | of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3 | -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions: mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------
More information about the developers
mailing list