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’.
