[m-dev.] is this a solver bug?

Ralph Becket rafe at cs.mu.OZ.AU
Thu Jul 7 17:08:14 AEST 2005


Ralph Becket, Thursday,  7 July 2005:
> > 	delayed(F, V0) = V :-
> > 		impure Ref = 'representation of any dvar/1'(V0),
> > 		impure new_reference(unbound([func1(F,Ref)]), DV0),
> > 		impure V = 'representation to any dvar/1'(DV0).
> 
> I would say the problem was that func1 here should be 'new func1'
> because this is a construction of a value with an existentially
> quantified type.

Talking to Zoltan, the reason for needing the `new ' prefix is not going
to go away any time soon.  The problem is that type analysis needs to
know whether a unification with an existentially quantified constructor
is going to produce or require the associated typeinfo structure.

-- Ralph
--------------------------------------------------------------------------
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