[m-dev.] for review: Aditi [3]

Fergus Henderson fjh at cs.mu.OZ.AU
Mon Jul 20 14:33:47 AEST 1998


On 20-Jul-1998, Simon Taylor <stayl at cs.mu.OZ.AU> wrote:
> > Hmm, there is some argument for only emitting that stuff in the dependency
> > files if `--aditi' or something like that is specified.
> > I'm not sure what the best approach is here.
> 
> I'd rather not have to `mmake depend' just because I changed an option.

Fair enough.

> > >  polymorphism__process_pred(PredId, ModuleInfo0, ModuleInfo, IO0, IO) :-
> > >          module_info_pred_info(ModuleInfo0, PredId, PredInfo),
> > > -        pred_info_module(PredInfo, PredModule),
> > > -        pred_info_name(PredInfo, PredName),
> > > -        pred_info_arity(PredInfo, PredArity),
> > >          (
> > > -                polymorphism__no_type_info_builtin(PredModule,
> > > -                        PredName, PredArity) 
> > > +                (
> > > +                        % Leave Aditi aggregates alone, since
> > > +                        % calls to them must be monomorphic.
> > > +                        % Other Aditi procedures should still be processed
> > > +                        % to remove complicated unifications and
> > > +                        % lambda expressions.
> > > +                        hlds_pred__pred_info_is_aditi_aggregate(PredInfo)
> > 
> > If calls to them must be monomorphic, where is this checked?
> 
> The input query must be an Aditi relation. Currently we don't check that,
> since the aggregate syntax is a bit up in the air anyway. For example, it
> might be nice to have Aditi aggregates as a separate goal type to allow any
> number of group-by and non-group-by variables (currently we only allow one
> of each), and to make sure the input closures are constants, not passed
> separately, which is required for code generation. I've added an XXX to
> magic_util.m where the check should be done.

Can you please add a comment here too, saying where the check is / should be
done?

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3        |     -- the last words of T. S. Garp.



More information about the developers mailing list