[m-rev.] for post-commit review: monomorphize some folds

Peter Wang novalazy at gmail.com
Fri Dec 2 18:40:18 AEDT 2022


On Thu, 01 Dec 2022 10:59:49 +1100 Peter Wang <novalazy at gmail.com> wrote:
> On Thu, 01 Dec 2022 07:08:21 +1100 "Zoltan Somogyi" <zoltan.somogyi at runbox.com> wrote:
> > For review by anyone.
> > 
> > Next I will try specializing each variant by inlining their
> > foldlN_pred_with_status arguments. (These will be different
> > for different variants, hence the monomorphization.)
> > Once that is done, the variants can be given names that
> > reflect that action as well as the fold.
> > 
> > Zoltan.
> 
> > Monomorphize some polymorphic predicates.
> > 
> > compiler/make.build.m:
> >     Replace three polymorphic predicates that fold over lists of values
> >     of type T with two, three and five monomorphic predicates respectively.
> >     The monomorphic versions fold over lists of elements of specified types.
> >     The list of monomorphic versions needed should be useful information for
> >     simplifying the make package's overuse of higher order constructs.
> > 
> >     The replaced predicates were mostly just interfaces to the predicates
> >     that looped over the lists. This diff leaves those predicates alone.
> > 
> 
> That looks okay.

Actually it broke parallel building of interface and .opt files.

Peter


More information about the reviews mailing list