On 08/26/2018 01:07 PM, Mark H Weaver wrote:

HiPhish <[email protected]> writes:

I am writing an implementation of MessagePack [1] for Guile and a part of the
spec is the presence of a "nil" data type. What would be a good value to
express "nothing" in Guile?

However, I would strongly advise against writing code (or worse, APIs)
that depend on (if #f #f) or *unspecified* returning a particular
distinguished value.

That tells me we should never use `(define x)'.

I would also avoid Guile's #nil.  That is a very special value, for one
purpose relating to Elisp compatibility, and ideally it should not be
used for anything else.

#nil only appears in the manual in association with the elisp extension.
I'm guessing it only intended to only appear in Scheme programs as '(const #nil)
when writing tree-il.


Reply via email to