Wolfgang Lux wrote:
> > to implement negation-as-failure). However, if you consider
> > suspension as a failure, this reasoning is no longer true.
>
> Good point. But then I would say that the implementation of
> allValuesOf is, errr, broken. Most users probably will implement
> negation-as-failure via
> naf x = allValuesOf x >>= return . null
> which falls short in the light of this reasoning. In fact,
> returning the list [0] for
> allValuesOf (0 ? let X free in ensureNotFree X)
> looks somewhat dubious to me.
I agree. I overlooked this inconsistence with the definition
of allValuesD and allValuesB. I agree that the Suspend case
should be handled in their definitions differently from Fail.
Regards,
Michael
_______________________________________________
curry mailing list
curry_at_lists.RWTH-Aachen.DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/curry
Received on Do Okt 27 2005 - 11:19:33 CEST