enum-set-constructor: #f or error?
Wolfgang Corcoran-Mathe 04 Jan 2022 19:27 UTC
The SRFI 209 description of enum-set-constructor seems to specify
two failure modes for the returned procedure:
Returns a procedure that accepts one argument, a list of symbols.
This procedure returns a newly allocated enum set containing the
enums whose names are members of the list of symbols. It is an
error if any of the symbols is not the name of an enum in the
enum type associated with enum-set. Otherwise, #f is returned.
According to the R6RS, the sentence "Otherwise, #f is returned."
should be deleted, since "the values in the list must all belong to
the universe"; i.e. it is an error. This seems like the right
behavior to me, although it's also plausible to return #f. Either
way, I'd like to clarify the current specification.
--
Wolfgang Corcoran-Mathe <xxxxxx@sigwinch.xyz>