[m-dev.] for review: merge HAL branch onto main branch

David Jeffery dgj at cs.mu.OZ.AU
Mon Feb 19 15:42:52 AEDT 2001


On 19-Feb-2001, Fergus Henderson <fjh at cs.mu.OZ.AU> wrote:
> Well, I was thinking about the code for unify, compare, deep_copy,
> deconstruct, etc.
> 
> > perhaps I need to add the following to the comment?:
> > 	% This dummy layout should never actually be referenced; the ptag that
> > 	% this layout refers to should never actually be used by Mercury.
> > 
> > Does that make it clearer?
> 
> That helps a bit, but not quite enough... if it is used at all,
> what ensures that it won't be used by Mercury?  It would help to
> explain why unify, compare, deep_copy, deconstruct etc. won't be
> called for values which use the reserved tag.  (Now that I think
> about it in a bit more detail, I think I can guess at what the reason
> might be... but I think it is worth documenting.)

OK, I will include a more complete rationale and explanation for this 
somewhere.

> Another possible alternative would be to give the dummy layout a value
> that Mercury won't crash with, e.g. something that says that this
> value is a c_pointer.

That is also probably a good idea. Then again, crashing (albeit in a more
elegant way) is probably the correct behaviour.


dgj
-- 
David Jeffery (dgj at cs.mu.oz.au) | If your thesis is utterly vacuous
PhD student,                    | Use first-order predicate calculus.
Dept. of Comp. Sci. & Soft. Eng.|     With sufficient formality
The University of Melbourne     |     The sheerist banality
Australia                       | Will be hailed by the critics: "Miraculous!"
                                |     -- Anon.
--------------------------------------------------------------------------
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