Re: prelude extension proposal

From: Michael Hanus <>
Date: Tue, 25 Oct 2005 15:53:26 +0200

Wolfgang Lux wrote:
> I am not opposed to including getSearchTree and friends in the
> prelude and eventually removing findall in favor of getAllValues.
> However, I would suggest omitting the Suspend case from the
> SearchTree type in Bernd's proposal since suspensions are
> always handled like a failure and any kind of implementation
> that is able to resume a suspended search goal (which is not
> possible in the current framework anyway) is likely to require
> more information than a simple constant.

You are right that a suspended search goal cannot be resumed
in the proposed framework. However, I think that the Suspend
case is useful for the programmer to distinguish finite failure
and suspension of a computation. For instance, if all branches
in the search tree are finite and end with a fail, you are
sure that your initial goal or expression is not provable
or has no value. Thus, under a closed world assumption,
you might assume the negation (and this is sometimes used
to implement negation-as-failure). However, if you consider
suspension as a failure, this reasoning is no longer true.

Best regards,


curry mailing list
Received on Di Okt 25 2005 - 16:10:52 CEST

This archive was generated by hypermail 2.3.0 : Do Nov 30 2023 - 07:15:08 CET