[m-dev.] nightly tests failed

Simon Taylor stayl at cs.mu.OZ.AU
Sat Feb 5 11:02:48 AEDT 2000


> > I can see three possible solutions:
> > 
> > 	(1) Change the types that we give to type_info and type_class_info
> > 	    variables so that they don't contain any type variables.
> > 
> > 	    I think the reasons for including type variables in
> > 	    the types of builtin:type_infos are mainly historical.

> > 	    Also, I seem to recall that there was some reason for
> > 	    putting type variables in the types of type_class_infos,
> > 	    although right now I can't remember what it was.
> > 	    DJ, do you remember?

That was added as part of my type specialization changes.

By including a representation of the class constraint in
the type of a typeclass-info, checking that the class constraints
on a call match the class constraints on the specialized version
can be done using type subsumption.

The specialization code doesn't need to see a construction of a
typeclass_info variable to know which constraint a typeclass_info
variable refers to -- it can just look at the type.

It also makes debugging the specialization code easier
because it makes it clear which typeclass_info is for
which class constraint.

Simon.
--------------------------------------------------------------------------
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