[m-rev.] for post-commit review: don't abort on curried preds with no declared determinism
Paul Bone
paul at bone.id.au
Wed Oct 7 16:48:18 AEDT 2015
On Wed, Oct 07, 2015 at 01:16:33PM +1100, Zoltan Somogyi wrote:
>
>
> On Wed, 7 Oct 2015 10:44:14 +1100, Paul Bone <paul at bone.id.au> wrote:
> > I forget, does this affect all higher order arguments?
> >
> > + A curried argument (like this one): Yes.
> > + A higher order argument that doesn't need currying.
> > + An explicit lambda.
>
> By "higher order argument", I presume you mean a variable
> of a higher-order type.
Actually I ment any value used as an argument to a
predicate/function/functor. However I see now that in a unification the
same problem occurs.
> The problem arises when converting a curried call to a lambda internally.
> It does not arise when the higher-order value is a variable or an explicit
> lambda expression. So: yes, no and no.
>
> > I ask because generalising the error message may help. The last part of the
> > message could read "so it cannot be used as a higher order argument", for
> > example.
>
> In the test case, the curried calls appear as arguments of a function symbol,
> but in other cases, the higher order values they represent may be assigned
> to variables, and thus aren't "arguments" of anything.
>
Yep.
--
Paul Bone
More information about the reviews
mailing list