[m-dev.] For review: declarative debugging back end (1/3)

Fergus Henderson fjh at cs.mu.OZ.AU
Sat Jul 18 12:07:36 AEST 1998


Mark Anthony BROWN, you wrote:
> 
> > > library/library:
> > > 
> > > 	Added evaluation_tree to the list of imports.
> > 
> > Should you also modify doc/Mmakefile to exclude that module
> > from the library reference manual?
> 
> Yes, atleast at this stage.
> 
> In the future, IMO, the interface to the front end should be a visible
> part of the (a?) library.  As noted by some researchers, the back end
> can be reused for various different purposes, so ultimately it would
> be good to allow users access to the generated EDTs.

Yes, I agree it could be useful.  It probably doesn't belong in the
standard library, though.

> > > +add_new_exported_type(Module0, TVarSet, TypeDefn, Cond, Context, Module) -->
> > > +        module_add_type_defn(Module0, TVarSet, TypeDefn, Cond, Context,
> > > +                        item_status(exported, must_be_qualified), Module1),
> > > +
> > > +        globals__io_get_globals(Globals),
> > > +        { convert_type_defn(TypeDefn, Globals, Name, Args, _Body) },
> > > +        { list__length(Args, Arity) },
> > > +        { TypeId = Name - Arity },
> > 
> > Why not just make it `add_type' and give it an `item_status' parameter?
> > That would make it more generally useful.
> 
> Ok.  the 'new_' part of the name was meant to indicate that we were
> adding a type from scratch (ie doing all the semantic analysis), as

Fine -- sorry, I meant to say `add_new_type' rather than `add_type'.

> > To avoid the probelm with make_hlds.m importing later compilation stages,
> > you could add `add_type' to hlds.m but delete these two lines, and
>                               ^^^^^^
> Did you mean this?  Or did you mean make_hlds.m or hlds_something.m?

I meant make_hlds.m.

-- 
Fergus Henderson              | Designing grand concepts is fun;
fjh at cs.mu.oz.au               | finding nitty little bugs is just work.
http://www.cs.mu.oz.au/~fjh   | -- Brooks, in "The Mythical Man-Month".
PGP key fingerprint: 00 D7 A2 27 65 09 B6 AC  8B 3E 0F 01 E7 5D C4 3F



More information about the developers mailing list