[m-dev.] for review: type_info/[01] saga continues.

Tyson Dowd trd at cs.mu.OZ.AU
Mon Aug 10 21:40:34 AEST 1998


On 10-Aug-1998, David Glen JEFFERY <dgj at cs.mu.OZ.AU> wrote:
> On 10-Aug-1998, Tyson Dowd <trd at cs.mu.OZ.AU> wrote:
> > Hi,
> > 
> > Fergus and I discussed this change on Friday.
> > Could someone check it?
> > 
> > It was causing problems in particular with type_name, because
> > type_name was seeing through the equivalence (which isn't really
> > what we wanted).
> > 
> > 
> > ===================================================================
> > 
> > 
> > Estimated hours taken: 0.5
> > 
> > Make std_util:type_info/0 different to private_builtin:type_info/1.
> > 
> > library/std_util.m:
> > 	Although std_util:type_info/0 is equivalent to
> > 	private_builtin:type_info/1, we want to make this equivalence
> > 	opaque, so we will reuturn std_util:private_builtin to its
> > 	previous defintion.  Of course it is still implemented as the
> > 	same type.
> 
> Is there any reason that you can't just implement it as:
> 
> :- type private_builtin:type_info(T) ---> type_info(std_util:type_info).

Only that I don't believe it is very elegant to have private_builtin
depending upon std_util in that manner.  It's strange to be able to
change the user level representation of type_infos, and have the
internal representation change too.

Technically I think it would work fine.

-- 
       Tyson Dowd           # "Bill Gates is a white persian cat and a monocle
                            # away from becoming another James Bond villan."
     trd at cs.mu.oz.au        # "No Mr Bond, I expect you to upgrade."
http://www.cs.mu.oz.au/~trd #                -- Dennis Miller and Terri Branch



More information about the developers mailing list