[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#29745] [PATCH 0/3] Disallow phase returning <unspecified>.

From: Arun Isaac
Subject: [bug#29745] [PATCH 0/3] Disallow phase returning <unspecified>.
Date: Sun, 17 Dec 2017 23:17:59 +0530

Ludovic Courtès <address@hidden> writes:

> it ends up defining a notion of “true” that’s different from that of
> Scheme (in Scheme, #f is the only false value; everything else is
> true, including “the unspecified value”—see “Disjointness of types” in
> the R5RS.)

I agree. I don't think we should define a new notion of "true" that is
different from that of Scheme.

But, in that case, why do we explicitly add #t at the end of phases that
return an unspecified value? Can we not drop this convention and simply
accept unspecified values from phases as a success of that phase?

The way it is right now, we add #t at the end of phases that return an
unspecified value, but don't check for this anywhere. So, we have a lot
of custom phases where people have forgotten to return #t. Patches 2 and
3 fix some of these, but I'm sure there are many more. Wouldn't it be
simpler and more logical to accept unspecified values as "true" in line
with Scheme's notion of "true"?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]