On Wed, Feb 27, 2008 at 6:33 PM, Jeremy Sydik <[EMAIL PROTECTED]> wrote:
> Thinking more about it, I'm leaning MORE toward '() than before.  I
>  also like relying
>  on a representation that's "standard" scheme rather than one that's
>  specifically part
>  of Chicken if we have the choice (and we do)

There's nothing particularly non-standard about (void).

(void) returns a value #<undefined>, whose type is disjoint from all
other types, e.g. ((disjoin list? number? string? symbol? boolean?)
(void)) constantly returns #f. It ain't nothing but void, and that's
an important quality for a value that is supposed to represent the
absence of a value. This is also why '() is a bad idea.

R5RS doesn't guarantee or forbid the creation of disjoint types, but
every practical Scheme depends upon it. For example, for a Scheme to
be able to support SRFI-9, the "record-types SRFI", it must be able to
define disjoint types.

The point is that any Scheme that can define records can define
(void), so there's nothing non-standard about it.

Graham


_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to