implementations, as it widens the scope of what they may do.....
I do not agree with the note that permitting any number of values to be
returned from `set!' et al is incompatible. It is not incompatible with
Requiring a single unspecified value means that:
(let ((x (if #f 'never))) <stuff that does not depend on x>)
is legal Scheme code (based on the interpretation that initializers *must* return a single value, unspecified or not).
So, allowing implementations to return multiple or zero unspecified values would actually shrink the language from what it used to be. This is what I observe the WG tries very hard to avoid, especially if "lots of existing code" depends on the status quo.
I know nothing about the existing code that depends on this particular feature. I would personally have preferred "any number", as it's handy for detecting buggy code.