Hello,

Mark H Weaver <[email protected]> skribis:

> [email protected] (Ludovic Courtès) writes:
>
>> I would suggesting returning zero values, using:
>>
>>   (values)
>>
>> That way, if a caller wrongfully attempts to get at the return value of
>> that procedure, it’ll get an error.
>>
>> Fibers does that in several places, and I think it’s a good convention
>> as it conveys exactly what you want.
>
> You cannot store (values) in a variable or data structure, so it
> wouldn't work here.
>
> The issue under discussion is how to represent MessagePack's "nil",
> which is one of the possible values that a MessagePack can have,
> alongside booleans, integers, floats, strings, arrays, etc.

Oops, sorry for the off-topic reply!

In this context, my preference would be for a singleton type:

  (define-record-type <nothing>
    (nothing)
    nothing?)

Ludo’.

Reply via email to